练习课1

1.求符合条件的整数集

 

#include <stdio.h>

int main()
{
    printf("输入不超过6的正整数A:"); 
    int a;
    scanf("%d", &a);
    int cnt = 0;
    int i,j,k; //[Error] 'for' loop initial declarations are only allowed in C99 or C11 mode
    
    for (i = a; i <= a+3; i++)
    {
        for (j = a; j <= a+3; j++)
        {
            for (k = a; k <= a+3; k++)
            {
                if (i!=j && i!=k && j!=k)
                {
                    printf("%d%d%d",  i, j, k);
                    cnt++;
                    if (cnt == 6)
                    {
                        printf("\n");
                        cnt = 0;
                    }else
                    {
                        printf(" ");
                    }
                }
            }
        }
    }

    return 0;
}

 

2.列出特定位数的水仙花数

 

#include <stdio.h>
#include <math.h>

int main()
{
    printf("输入水仙花数位数:");
    int n;
    scanf("%d", &n);
    int min = pow(10, n-1);
    int max = pow(10, n) - 1;
    int sum = 0;

    int i;
    for ( i = min; i <= max; i++)
    {
        int j;
        int t = i;
        for (j = 1; j <= n; j++)
        {
            sum += pow(t%10, n);
            t = t/10;            
        }
        if (i == sum)
        {
            printf("%d\n", i);
        }
        sum = 0;
    }


    return 0;
}

 

3. 99乘数表

#include <stdio.h>

int main()
{
    printf("输入正整数:");
    int n;
    scanf("%d", &n);

    int i,j;
    for ( i = 1; i <= n; i++)
    {
        for ( j = 1; j <= i; j++)
        {
            printf("%d*%d=%d", j, i, i*j );
            if (i*j < 10)
            {
                printf("   ");
            }else{
                printf("  ");
            }
        }
        printf("\n");
    }

    return 0;
}

 

4. 统计素数并求和

#include <stdio.h>

int main()
{
    printf("输入两个正整数M和N(M<=N):");
    int m,n;
    scanf("%d %d", &m, &n);
    if (m ==1)
    {
        m = 2;
    }
    int cnt = 0;
    int sum = 0;

    int i,j;
    for ( i = m; i <= n; i++)
    {
        int isPrime = 1;
        for ( j = 2; j < i; j++)  //判断i是不是素数
        {
            if (i%j == 0)
            {
                isPrime = 0;
                break;       //跳出当前for j循环
            }
        }
        if (isPrime)  //判断i是不是素数
        {
            cnt++;
            sum += i;
        }
    }
    printf("%d %d\n", cnt, sum);

    return 0;
}

 

posted @ 2023-07-31 00:34  园友3218619  阅读(2)  评论(0)    收藏  举报