- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
第33、34课时for循环的嵌套
实验题一:
1、下面有关for循环的正确描述是: D
for循环只能用于循环次数已经确定的情况
for循环是先执行循环体语句,后判断表达式
在for循环中,不能用break语句跳出循环体
for循环的循环体语句中,可以包含多条语句,但必须用花括号括起来
2、对for(表达式1;;表达式3)可理解为:B
for(表达式1; 0;表达式3)
for(表达式1;1;表达式3)
for(表达式1;表达式1;表达式3)
for(表达式1;表达式3;表达式3)
3、若i为整型变量,则以下循环执行次数是:Bfor (i=2;2==0;) printf(%d,i--);
无限次 B)0次 C)1次 D) 2次
4、以下for循环的执行次数是:C
for (x=0,y=0; (y=123)(x4); x++) ;
A)是无限循环B)循环次数不定C)执行4次 D)执行3次
解析:第一次:;y=12304成立x++ x=1;第二次:(y=123)(14)
成立,x++ x=2
第三次:(y=123)(24)成立,x++立,x++ x=4
x=3 第四次:(y=123)(34)成
第五次:(y=123)(44)不成立,退出循环。
5、以下不是无限循环的语句为:A
A) for (y=0,x=1;x++y;x=i++) i=x;
B) for(;1; x++=i);
while(1){x++;}
D) for(i=10;1;i--)sum+=i;
6、下面程序段的运行结果是:Cfor(y=1;y10;)
y=((x=3*y,x+1),x-1);
printf (x=%d,y=%d,x,y);
A)x=27,y=27 B)x=12,y=13 C)x=15,y=14 D)x=y=27
第一次:110为真,x=3,x+1=3+1=4, y=(4,x-1) y=(4,2)=2
第二次: 210为真, x=3*2=6,7 y=(7,x-1)=(7,5) y=5
第三次:510为真,x=3*5=15 16 y=(16,x-1)=(16,14) y=14
第四次:1410为假,
7、下面程序段的运行结果是for(x=3;x6;x++)
printf((x%2)(**%d):(##%d\n),x);解析:第一次:36为真,3%2=1 **3 x++
第二次:46为真,4%2=0 ##4(换行) x++
x=4
x=5
第三次:56为真,5%2=1 **5 x++第四次:66为假,结束循环
x=6
A)**3
B
)##3
C)##3
D)**3##4
##4
**4
**4##5
**5
**5
##5
8、下列程序段不是死循环的是
int i=100;whiLe (1)
{i=i%100+1;
if (i100) break;
}
B) for(;1;);
C) int k=0;do{++k;}
while(k=0);
D)
int
s=36;
while
(36)
;
--s;
9、执行语句for(i=1;i++4;) ;后变量i的值是A)3 B)4 C)5 D)不定
实验题二:编程题
1、编写程序,求1-3+5-7+…-99+101的值。(1+5+9+13+17+…+101)-(3+7+11+15+…+99)
方法一:main()
{
inti,j,sum1=0,sum2=0,sum;for(i=1;i=101;i+=4)
sum1+=i;for(j=3;j=99;j+=4)
sum2+=j;sum=sum1-sum2;
printf(“1-3+5-7+…-99+101=%d”,sum);
}
方法二:main()
{
int i,sum=0,s=1;for(i=1; i=101;i+=2)
{
sum=sum+i*s;
s=-s; /*控制符号交替变换*/
}
printf(sum=%d,sum);
}
2、编写程序,求e的值。e 1+1/1!+1/2!+1/3!+..+1/n!(1)用for循环,计算前50项。
(2)用循环,要求直至最后一项的值小于10-4源程序一:(1)用for循环实现
main( )
{
int i,n;
double sum=1,t=1;
printf(input n:\n);scanf(%d,n);for(i=1;i=n;i++)
{
t=t*i; /* 实现阶乘*/
sum=sum+1/t;
}
printf(e=%lf,sum);
}
源程序二:(2)用while循环实现
文档评论(0)