1.
求
1+2+3+ +n
的和,其中
n
的值有键盘输入。要求分别使用
for
,
while
,和
do while
语
句实现。
(
1
)
for
语句:
#include<stdio.h>
main()
{
inti,n,sum;
printf("
请输入
n
的值
:"); scanf("%d",&n);
i=0;
for(sum=0;i<=n;i++)
{
sum=sum+i;
}
printf("
和为
:%d\n",sum);
}
(
2
)
while
语句:
3
#include<stdio.h>
main()
{
inti,n,sum;
printf("
请输入
n
的值:
");
scanf("%d",&n);
i=0;
sum=0;
while(i<=n)
{
sum=sum+i;
i++;
}
printf("
和为
:%d\n",sum);
}
(3)
do while
语句:
#include<stdio.h>
main()
inti,sum,n;
i=1;
sum=0;
scanf("%d\n",&n);
printf("
请输入一个数:
");
do
{
sum=sum+i;
i++;
}
while(i<=100);
printf("%d\n",sum);
}
4.
打印所有的“水仙花数” ,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该 数本身。
#include<stdio.h>
main()
{
inti,n,g,s,b;
for(b=1;b<=9;b++) for(s=0;s<=9;s++) for(g=0;g<=9;g++)
{
n=g*g*g+s*s*s+b*b*b;
i=g+s*10+b*100;
if(n==i)
printf("%d
是水仙花数
\n",i);
4
}
}
5.
从键盘上任意输入一个整数,判断其实是否是素数。
(
1
)
if
语句:
#include<stdio.h>
main()
{
inti,n;
printf("
请输入一个整数:
");
scanf("%d",&i); for(n=2;n<=i-1;n++) if(i%n==0) break;
if(n<i) printf("%d
不是素数
\n",i);
else
printf("%d
是素数
\n",i);
}
(
2
)
for
语句:
#include<stdio.h> main()
{
intn,g,s,b;
for(n=100;n<1000;n++)
{
g=n%10; s=n/10%10; b=n/100;
if(n==g*g*g+s*s*s+b*b*b)
printf("%d
是水仙花数
\n",n);