




已阅读5页,还剩5页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第6课 循环结构程序设计 1. 循环:为完成特定任务,一组语句/函数反复被执行,C语言中主要有三种语句实现,且可通用。语句表达式假(0)真(非0)dowhile语句的执行过程2. do while(表达式) 直到型语句结构:先执行,后判断表达式的条件是否成立。如:用dowhile语句求1100的累加和#includevoid main() int i=1,sum=0; do sum += i; /*实现累加*/ i+; /*循环控制变量i增1*/ while(i=100 );printf(1+2+3+100=%dn,sum);该程序运行结果如下:1+2+3+100=50503. while(表达式 ) 当型语句结构:先判断条件,再决定是否执行。语句表达式假(0)真(非0)while语句的执行过程如:用while语句求1100的累加和#includevoid main() int i=1,sum=0;while(i=100 ) sum += i; /*实现累加*/i+; /*循环控制变量i增1*/printf(1+2+3+100=%dn,sum);该程序运行结果如下:1+2+3+100=50504. for( 表达式1;表达式2 ;表达式3) l 表达式1:循环的初值;表达式2:循环的条件;表达式3:循环增量(1)求解“表达式1”。(2)求解“表达式2”。如果其值为真(非0),执行(3);否则,转至(4)。(3)执行循环体语句,并求解“表达式3”,然后转向(2)。(4)执行for语句的下一条语句。如:用for语句求1100的累加和。for(i=1; i100) break;Bfor ( ; ; );Cint k=0;do+k; while(k=0);Dint s=36;while(s); -s;7 以下能正确计算1*2*3*10的程序是( ).Adoi=1;s=1; Bdoi=1;s=0;s=s*i; s=s*i;i+; i+;while(i=10); while(i=10);Ci=1;s=1; Di=1;s=0;do s=s*i; do s=s*i;i+; i+;while(i=10); while(i=10);8 下面程序的运行结果是( )。#include void main() int y=10;doy-;while(-y);printf(%dn,y-);A-1 B1 C8 D09 下面程序的运行结果是( )。#includevoid main()int num=0;while(num=2) num+;printf(%dn,num);A1B1 2C1 2 3D1 2 3 410 若运行以下程序时,从键盘输入3.6 2.4,则下面程序的运行结果是( ).#include#includevoid main() float x,y,z; scanf(“%f%f”,&x,&y); z=x/y; while(1) if(fabs(z)1.0) x=y;y=z;z=x/y; else break; printf(“%fn”,y); A1.500000 B1.600000 C2.000000 D2.400000二、 看程序,写运行结果。1 若运行以下程序时,从键盘输入2473,则下面程序的运行结果是( ).#includevoid main()int c;while(c=getchar()!=n)switch(c-2)case 0:case1: putchar(c+4); case2: putchar(c+4);breakcase3: putchar(c+3);default: putchar(c+2);break;printf(“n”);2 若运行以下程序时,从键盘输入ADescriptor,则下面程序的运行结果是( )。#include void main()char c;Int v0=0,v1=0,v2=0;doswitch(c=getchar()casea:caseA:casee:caseEcasei:caseI:caseo:caseO:caseu:caseU:v+=1;default:v0+=1;v2+=1;while(c!=n);printf(“v0=%d,v1d,v2=%dn”,v0,v1,v2);3 下面程序的运行结果是( ).#includevoid main() int i,b,k=0;for(i=1;i=0) k+;printf(“%d,%d”,k,b);4 下面程序的运行结果是( ).#includevoid main() int a,b; for (a=1,b=1;a=20) break; if(b%3=1) b+=3; continue; b-=5; printf(“%dn”,a);5 下面程序的运行结果是( ).#includevoid main() int i,j,x=0; for (i=0;i2;i+) x+; for(j=0;j=3;j+) if(j%2) continue; x+; x+; printf(“x=%dn”,x); 6 下面程序的运行结果是( ).#includevoid main() int i; for (i=1;i=5;i+) if(i%2) printf(“*”); else continue; printf(“#”); printf(“$n”);7 下面程序的运行结果是( ).#includevoid main() int i,j,a=0; for(i=0;i2;i+) for (j=0; j4; j+) if (j%2) break;a+;a+;printf(“%dn”,a);8 下列程序运行后的输出结果是( )#includevoid main()int i,j,k;for(i=1;i=4;i+)for(j=1;j=20-3*i;j+)printf();for(k=1;k0;i-)for(j=1;j=20-3*i;j+)printf();for(K=1;k=2*i-1;k+)printf(%3s,*);printf(n);9 下列程序运行后的输出结果是( )#includevoid main()int i,j,k;for(i=1,i=6;i+)for(j=1;j0;k-)printf(%3d,k);printf(n0);三、 程序填空。1 下面程序的功能是将小写字母变成对应的大写字母后的第二个字母,其中y变成A,z变成B,请选择填空。#includevoid main() char c;while(c=getchar()!=n) if(c=a&cZ”&c=”Z”+2) printf(“%c”,c);2 下面程序的功能是将从键盘输入的一组字符中统计出大写字母的个数m和小写字母的个数 n,并输入m,n中的较大数,请选择填空。#includevoid main() int m=0,n=0;char c;while( )!=n) if(c=A&c=a&c=z) n+;printf(“%dn”,mn? ); 3 下面程序的功能是把316表示为两个加数分别能被13和11整除。请选择填空。#include void main() int i=0,j,k;doi+;k=316-13*i;while( );j=k/11;printf(“316=13*%d+11*%d”,i,j);4 从键盘上输入若干个学生的成绩,统计并输出最高成绩和最低成绩,当输入负数时结束。#include void main() float x, amax, amin;scanf(“%f”,&x);amax=x; amin=x; while( )if(xamax) amax=x; if( ) amin=x; scanf(“%f”,&x); printf(amax=%fnamin=%fn,amax, amin);5 求算式xyz+yzz=532中x, y, z的值(其中xyz和yzz分别表示一个三位数)。#includevoid main()int x,y,z,i,result=532;for(x=1; ;x+)for(y=1;y10;y+) for(z=0; ;z+) i=100*x+10*y+z+100*y+10*z+z; if( ) printf(x=%d,y=%d,z=%dn,x,y,z); 6 根据公式e=1+1/1!+1/2!+1/3!+求e的近似值,精度要求为10-6。#includevoid main() int i;double e,new;e=1.0;new=1.0;for(i=1; ;i+) printf(e=%fn,e)7 完成用一元人民币换成一分、两分、五分的所有兑换方案。#includevoid main() int i,j,k,l=1;for(i=0;i=0) printf( %2d, %2d, %2d ,i,j,k); if(l%5=0) printf(n);8 统计正整数的各位数字中零的个数,并求各位数字中的最大者。#includevoid main() int n,count,max,t; count=max=0; scanf(“%d”,&n); do if( ) +count; else if( ) max=t; while(n); printf(“count=%d,max=%d”,count,max); 四、 编程题。1 根据公式/61/1+1/2+1/3+1/n,求的近似值,直到最后一项的值小于10的负六次为止。2 有1020个西瓜,第一天卖一半多两个,以后每天卖剩下的一半多两个,问几天后可以卖完,请编程计算。3 编程实现用“辗转相除发”求两个正整数的最大公约数。4 等差数列的第一项a=2,公差d=3,编程实现在前n项和中,输出能被4 整除的所有的和。 5 求出用数字0至9可以组成多少个没
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 留学申请书范文芳
- 房屋维权申请书
- 申请岗位申请书英语
- 中职奖学金申请书
- 注销食品申请书
- 申请排长职位的申请书
- 商务护照申请书范文
- 向检察院写申请书
- 农业申请补助申请书范文
- 农村民政救助申请书
- 中医糖尿病治疗:特效中成药集
- 第十篇 范爱农-名著《朝花夕拾》阅读导引+思维导图+内容概括+原文批注+阅读训练
- TD/T 1065-2021 国土空间规划城市设计指南(正式版)
- 手机配件市场发展现状分析及行业投资战略研究报告(2024-2030)
- 呼吸道梗阻应急预案
- 华东师范大学-梁宁建--心理学导论完整课件
- 管道沟槽土方开挖施工方案
- (人教版) 高一 单词表(默写版)
- 新概念第一册单词默写表
- 信息组织与信息构建课件
- 手术室无菌操作技术
评论
0/150
提交评论