C 练习实例6
题目:用*号输出字母C的图案。
程序分析:可先用'*'号在纸上写出字母C,再分行输出。
参考代码为:
#include <stdio.h>
int main()
{
int n = 0;
scanf_s("%d", &n);
int i = 0;
for (i = 0; i < n; i++)
{
int j = 0;
for (j = 0; j < n; j++)
{
if ((i == 0) || (i == n - 1) || (j == 0))
{
printf("*");
}
}
printf("\n");
}
return 0;
}
代码的运行结果为:
C 练习实例8
题目:输出9*9口诀。
程序分析:分行与列考虑,共 9 行 9 列,i 控制行,j 控制列。
参考代码为:
#include <stdio.h>
int main()
{
int i = 0;
for (i = 1; i <= 9; i++)
{
int j = 0;
for (j = 1; j <= i; j++)
{
printf("%d*%d=%2d ", i, j, i * j);
}
printf("\n");
}
return 0;
}
代码的运行结果为:
C 练习实例10
题目:打印楼梯
用i控制行,j来控制列,j根据i的变化来控制输出黑方格的个数。
参考代码为:
#include <stdio.h>
int main()
{
int n = 0;
scanf_s("%d", &n);
int i = 0;
for (i = 0; i < n; i++)
{
int j = 0;
for (j = 0; j <= i; j++)
{
printf("** ");
}
printf("\n");
}
return 0;
}
代码的运行结果为:
C 练习实例11
题目:古典问题(兔子生崽):有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?(输出前40个月即可)
程序分析:兔子的规律为数列1,1,2,3,5,8,13,21....,即下个月是上两个月之和(从第三个月开始)。
参考代码为:
#include <stdio.h>
int my_tu(int n)
{
if (n == 1)
return 1;
if (n == 2)
return 1;
if (n > 2)
return my_tu(n - 1) + my_tu(n - 2);
}
int main()
{
int n = 0;
scanf_s("%d", &n);
printf("%d\n", my_tu(n));
return 0;
}
代码的运行结果为:
C 练习实例12
题目:判断101到200之间的素数。
程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除, 则表明此数不是素数,反之是素数。
参考代码为:
#include <stdio.h>
int main()
{
int i = 0;
for (i = 101; i <= 201; i++)
{
int j = 0;
int flag = 1;
for (j = 2; j < i; j++)
{
if (i % j == 0)
{
flag = 0;
}
}
if (flag == 1)
{
printf("%d ", i);
}
}
}
代码的运行结果为: