题目1. 若一个三位数等于其各位上数字的立方和,则称这个三位数为水仙花数。
例如:153是一个水仙花数,因为153=13+53+33。编写一个程序,输出所有的水仙花数。(用while循环)
流程图:
实现代码:
#include <stdio.h>
int main()
{
int i=100;
int a,b,c;
while(i < 1000){
a = i / 100;
b = i /10 % 10;
c = i % 10;
if(i == (a*a*a + b*b*b + c*c*c)){
printf("水仙花数为:%d \n", i);
}
i++;
}
}
运行结果:
题目2. 编写一个程序,统计500~1000之间素数的个数。(用do while循环)
流程图:
实现代码:
#include <stdio.h>
int main()
{
int i=500,j,count=0;
do
{
for(j=2;j<i;j++)
{
if (i%j==0)
break;
}
if (j==i)
count++;
i++;
}
while(i<=1000);
printf("count = %d\n", count);
}
运行结果:
题目3.编写一个程序,计算200以内能被3整除,且个位数为5的所有整数之和。(用for循环)
流程图:
实现代码:
#include <stdio.h>
int main()
{
int sum=0, i;
for(i = 1; i <= 200; i++)
{
if((i % 3 == 0) && (i % 10 == 5) )
{
sum += i;
}
}
printf("和为:sum = %d \n",sum);
}
运行结果:
题目4. 编写一个程序,输出九九乘法表。(循环嵌套)
流程图:
实现代码:
#include <stdio.h>
int main()
{
int i, j, result;
printf("\n");
for(i = 1; i < 10; i++)
{
for(j = 1; j <= i; j++)
{
result = i * j;
printf("%d*%d = %-3d",i,j,result);
}
printf("\n");
}
}
运行结果:
题目5. 若一个三位数等于其各位上数字的立方和,则称这个三位数为水仙花数。例如153
是一个水仙花数,因为153=13+53+33。编写一个程序,输出第一个水仙花数。(break)
流程图:
实现代码:
#include <stdio.h>
int main()
{
int i,a,b,c;
for(i = 100; i < 1000; i++){
a = i / 100;
b = i /10 % 10;
c = i % 10;
if(i == (a*a*a + b*b*b + c*c*c)){
printf("第一个水仙花数为:%d \n", i);
break;
}
}
}
运行结果:
题目6. 编写一个程序,计算。其中m由输入决定。
流程图:
实现代码:
#include <stdio.h>
int main()
{
int m,i;
float s = 0.0;
printf("请输入m的值:");
scanf("%d",&m);
for (i = 1; i <= m; i++)
{
if (i % 2 == 0)
{
s -= 1.0 / i;
}
else
{
s += 1.0 / i;
}
}
printf("s的值为:s = %f\n",s);
}
运行结果: