微信搜索关注"91考试网"公众号,领30元,获取公务员、事业编、教师等考试资料40G!
件判定。 参考答案: continue continue语句只是结束本次循环,然后进行循环的条件判定。break语句是终止整个循环的执行,跳出循环不再进行条件判定。----------------------------------------10、下列程序的运行结果是________。#define POWER(x)((x)*(x))main(){ int i=1:printf("%d,%d",POWER(i++),i);} 参考答案: 1,l POWER(i++)中先引用i的值1,POWER(i++)=1*1=l,再将i的值加l。----------------------------------------11、下列程序的输出结果是________。#include<stdio.h>fun(){ static int a一0;a+=3;printf("%d",a);)main(){ int cc;for(cc=1;CC<5;CC++)fun();printf("\n");} 参考答案: 3 6 9 12 本题考查最基本的for循环:for(cc=l;cc<5;cc++)规定循环次数为4次,每次a+=3即每次a的值增3,但因为fun函数中变量a为static类型,所以每次调用完子函数之后,变量a所做的改变都要保存。----------------------------------------12、设有以下程序:main(){int a,b,k=4,m=6,*pl=&k,*p2=&m;a=pl=&m:b=(*p1)/(*p2)+7;printf("a=%d",a);printf("b=%d\n",b);}执行该程序后,a的值为________,b的值为________。 参考答案: O 7 因为p1是指向k的指针,其中的地址与m的地址不同,因为==的运算不成立,因此a的值为O,接着执行b=(*p1)/(*p2)+7=4*8+7=7。----------------------------------------13、以下程序运行后的输出结果是________。main(){int a=0;a+=(a=8);printf("%d",a);} 参考答案: 16 赋值表达式的值就是所赋值变量的值,本值a+=8相当于a=a+8,对表达式逐步进行求解:a+=(a=8)此时,a的值由于赋值为8,而不是O,a+=8即a=a+8,所以a=16。----------------------------------------14、设有下程序:main(){int nl,n2;scanf("%d",&n2);while(n2!=o){nl=n2%10;n2=n2/lO;printf("%d",n1);}}程序运行后,如果从键盘上输入1298,则输出结果为________。 参考答案: 8921 本题考察while循环,当n2=1298时,while循环成立,执行n1=n2%10;n2=n2/10;后,n1为8,n2为129,输出nl的值为8;当n2=129时,whiIe循环成立,执行n1=n2%10;n2=n2/10;后,n1为9,n2为12,输出n1的值为9;当n2=12时,while循环成立,执行n1=n2%10;n2=n2/10;后,n1为2,n2为1,输出nl的值为2;当n2=1时,while循环成立,执行nl=n