您的位置:首页 > 编程语言 > C语言/C++

C语言编程小练习5(嵌套循环)

2018-03-24 22:00 274 查看

C语言编程小练习5(嵌套循环)

5.1输出五五乘法表。

1 #include<stdio.h>
2
3 int main(void)
4 {
5     int i, j;
6     for (i = 1; i <= 5; i++) {
7         for (j = 1; j <= 5; j++)
8             printf("%4d * %d = %2d", i, j, i*j);
9             printf("\n");
10
11     }
12     return 0;
13 }


5.2输出如图所示的五五乘法表。



1 #include<stdio.h>
2
3 int main(void)
4 {
5     int i, j, k;
6     for (i = 1; i <= 5; i++) {
7         for (k = 1; k <= i; k++)
8             printf("             ");
9         for (j = i; j <= 5; j++)
10             printf("%4d * %d = %2d", i, j, i*j);
11             printf("\n");
12
13     }
14     return 0;
15 }


5.3输出如图所示的图案(注:星号之间没有空格)。



1 #include<stdio.h>
2
3 int main(void)
4 {
5     int i, j, k;
6     for ( i = 1; i <= 7; i++) {
7         for (j = 1;j <= 7 - i; j++)
8             printf(" ");
9         for (k = 1; k <= 2*i - 1; k++)
10             printf("*");
11             printf("\n");
12     }
13     return 0;
14 }


5.4根据输入的行数输出图案。例如,输入的行数为7,则输出如图所示的图案(注:星号之间没有空格)。



1 #include<stdio.h>
2 #include<stdlib.h>
3
4 int main(void)
5 {
6     int i, j, n, k;
7     scanf("%d", &n);
8     for ( i = -n / 2; i <= n / 2; i++) {
9         for (j = 1;j <= abs(i) ; j++)
10             printf(" ");
11         for (k = 1; k <= n - 2*abs(i) ; k++)
12             printf("*");
13             printf("\n");
14     }
15     return 0;
16 }


5.5输出100以内所有的质数,每行输出5个质数。

1 #include<stdio.h>
2 #include<math.h>
3
4 int main(void)
5 {
6     int m, n, k, i;
7     n = 1;
8     k = 0;
9     while (n <= 100) {
10         n++;
11         m = (int)(sqrt(n) + 1);
12         for (i = 2; i <m; i++)
13             if (n % i == 0)
14                 break;
15         if ( i == m) {
16             printf("%4d ", n);
17              k++;
18         if ( k % 5 == 0)
19             printf("\n");
20         }
21     }
22     return 0;
23 }


5.6百钱买鸡问题。一百个铜钱买了一百只鸡,其中公鸡一只5钱,母鸡一只3钱,小鸡一钱三只。问:一百只鸡中公鸡、母鸡、小鸡各有多少只?(“各有”说明不会出现买零只的情况)。

1 #include<stdio.h>
2
3 int main(void)
4 {
5     int g, m, x, n;
6     n = 0;
7     for ( g = 1; g <= 20; g ++)
8         for ( m = 1; m <= 33; m ++)
9             for ( x = 3; x <= 99; x += 3)
10             if (5*g + 3*m + x/3 == 100 && g + m + x == 100) {
11             //  n++;
12            //n++,计数器,当满足条件的方案过多时使用,以便后面规整化输出。
13                 printf(" cock=%2d, hen=%2d, chicken=%2d", g, m, x);
14                 //if ( n % 4 == 0)
15                 //判断方案是否为4整数倍,当达到四个方案的倍数换行,此处不需要。
16                     printf("\n");
17             }
18     printf("\n");
19     return 0;
20 }
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息