资源描述:
《程序阅读及填空(问题详解).doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、一.程序阅读题1.若运行时输入100↙,写出以下程序的运行结果。main(){inta; scanf(“%d”,&a); printf(“%s”,(a%2!=0)?”No”:”Yes”);}答案:Yes2.写出以下程序的运行结果。main(){inta=2,b=7,c=5; switch(a>0){ case1:switch(b<0){ case1:printf(“”);break; case2:printf(“!”);break;
2、 } case0:switch(c==5){ case1:pritnf(“*”);break; case2:printf(“#”);break; default:printf(“#”);break; } default:printf(“&”); } printf(“”);}答案:*&3.写出下面程序运行的结果。main(){inti,b,k=0; for(i=1;i<=5;i++){
3、 b=i%2; while(b--==0)k++; } printf(“%d,%d”,k,b);}答案:204.写出下面程序运行的结果。main(){intk=1,n=263; do{k*=n%10;n/=10;}while(n); printf(“%d”,k);}答案:365.写出下面程序运行的结果。main(){inta=10,y=0; do{ a+=2;y+=a; if(y>50)break; }while(a=14); printf(“a=%dy=%d
4、”,a,y);}答案:a=16y=60数组部分:1.写出下面程序的运行结果。答案: main() {inta[6][6],i,j; for(i=1;i<6;i++) for(j=1;j<6;j++) a[i][j]=(i/j)*(j/i); for(i=1;i<6;i++){ for(j=1;j<6;j++) printf(“%2d”,a[i][j]);
5、 printf(“”); }}2.写出下面程序的运行结果。 main() {inti=0; chara[]=”abm”,b[]=”aqid”,c[10]; while(a[i]!=’ ’&&b[i]!=’ ’){ if(a[i]>=b[i])c[i]=a[i]-32; elsec[i]=b[i]-32; i++; } c[i]=’ ’; put
6、s(c);}答案:AQM3.当运行下面程序时,从键盘上输入AabD↙,则写出下面程序的运行结果。 main() {chars[80]; inti=0; gets(s); while(s[i]!=’ ’){ if(s[i]<=’z’&&s[i]>=’a’) s[i]=’z’+’a’-s[i]; i++; } puts(s);}答案:AzyD二.程序判断题1.下面程
7、序将输入的大写字母改写成小写字母输出,其他字符不变;请判断下面程序的正误,如果错误请改正过来。main(){charc; c=getchar(); c=(c>=’A’
8、
9、c<=’Z’)?c-32:c+32; printf(“%c”,c);}答案:c=(c>=’A’
10、
11、c<=’Z’)?c-32:c+32;改为:c=(c>='A'&&c<='Z')?c+32:c; 2.下面程序输入两个运算数x,y和一个运算符号op,然后输出该运算结果的值,例如输入3+5↙得到结果8;请判断下面程序的正误,如果错误请改正过来。 m
12、ain() { floatx,y,r; charop; scanf(“%f%c%f”,&x,&op,&y); switch(op){ case