实验4-循环结构详解
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《C语言程序设计》实验报告
实验序号:4 实验项目:循环结构
1.
方法1:用while语句:
#include
int main()
{
int i=1;
double sum=0,term,a=2,b=1,c;
while(i<=20)
{
term=a/b;
sum=sum+term;
c=a+b;
b=a;
a=c;
i++;
}
printf("sum=%.2f\n",sum);
return 0;
}
方法2:用do-while语句:
#include
int main()
{
int i=1;
double sum=0,term,a=2,b=1,c; do{
term=a/b;
sum=sum+term;
c=a+b;
b=a;
a=c;
i++;
}
while(i<=20);
printf("sum=%.2f\n",sum); return 0;
}
方法3:用for语句:
#include
int main()
{
int i;
double sum=0,term,a=2,b=1,c; for(i=1;i<=20;i++)
{
term=a/b;
sum=sum+term;
c=a+b;
b=a;
a=c;
}
printf("sum=%.2f\n",sum); return 0;
}
#include
int main()
{
int x,y,z,i=0;
for(x=1;x<=9;x++)
for(y=1;y<=12;y++)
for(z=2;z<=36;z=z+2)
if( 4*x+3*y+z/2==36&&x+y+z==36)
{
i++;
printf("有%d种方法.其中:\nx=%d\ny=%d\nz=%d\n",i,x,y,z);
}
return 0;
}
3.
#include
int main()
{
int x=0,i=0;
while (i<10)
{
if (x%3==2 && x%5==4 && x%7==3)
{
printf("%d\n",x);
i++;
}
x++;
}
return 0;
}
4.
#include
#include
int main()
{
long x;
int i=0;
printf("plesae input x (x为长整形正数)\n");
scanf("%ld",&x);
do{
x=x/10;
i++;
}
while(x>0);
printf("x为%d位数:\n",i);
return 0;
}
5.
#include
int main()
{
int i, x=3,sum=3;
for(i=2;i<=10;i++)
{
x=(x-0.5)*2;
sum=x+sum;
}
printf("第十年的产量是%d\n",x);
printf("前十年的总产量是%d\n",sum);
return 0;
}
6.
#include
int main()
{
int i,j;
for(i=0;i<=10;i++)
{
for(j=0;j<=5;j++)
{
if(i*1+j*2==10)
printf("10元换成: %d张1元%d张2元\n",i,j);
}
}
return 0;
}
7.
#include
int main()
{
int i,j;
for (i=1;i<=7;++i)
{
for(j=1;j<=(i<4?4-i:i-4);++j) printf(" ");
for(j=1;j<=(i<4?i*2-1:15-2*i);++j) printf("*");
for(j=1;j<=(i<4?4-i:i-4);++j) printf(" ");
printf("\n");
}
return 0;
}
8.
/*统计有2个位数相等,但3个数字不全相等的3位自然偶数的个数*/
#include
int main()
{ int x,a,b,c,i=0;
for(x=100;x<1000;x++)
{
if(x%2==0) //判断是否为偶数
{
a=x%10;//个位
b=(x/10)%10;//十位
c=x/100;//百位
if((a==b && b!=c)||(a==c && b!=c)||(b==c && a!=c)) //判断两个位数相等
{
i++;//满足提议计数器自增1
printf("%d ",x); //输出适合的x
}
}
}
printf("\nTotally: %d\n",i); //统计符合题意的x总个数
return 0;
}