资源描述:
《程序阅读及填空(答案).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; } case0:switch(c==5)
2、{ case1:pritnf(“*”);break; case2:printf(“#”);break; default:printf(“#”);break; } default:printf(“&”); } printf(“”);}答案:*&3.写出下面程序运行的结果。main(){inti,b,k=0; for(i=1;i<=5;i++){ b=i%2; while(b--==0)k++; } printf(“%d,%d”,k
3、,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”,a,y);}答案:a=16y=60数组部分:1.写出下面程序的运行结果。答案: main() {inta[6][6],i,j; for
4、(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]); printf(“”); }}2.写出下面程序的运行结果。 main() {inti=0; chara[]=”abm”,b[]=”aqid”,c[10]; while
5、(a[i]!=’ ’&&b[i]!=’ ’){ if(a[i]>=b[i])c[i]=a[i]-32; elsec[i]=b[i]-32; i++; } c[i]=’ ’; puts(c);}答案:AQM3.当运行下面程序时,从键盘上输入AabD↙,则写出下面程序的运行结果。 main() {chars[80]; inti=0; gets(s); while(s[i]!=’ ’){
6、if(s[i]<=’z’&&s[i]>=’a’) s[i]=’z’+’a’-s[i]; i++; } puts(s);}答案:AzyD二.程序判断题1.下面程序将输入的大写字母改写成小写字母输出,其他字符不变;请判断下面程序的正误,如果错误请改正过来。main(){charc; c=getchar(); c=(c>=’A’
7、
8、c<=’Z’)?c-32:c+32; printf(“%c”,c);}答案:c=(c>=’A’
9、
10、c<=’Z’)?c-32:c+32;改为:c=(c>='A'&&c<='
11、Z')?c+32:c; 2.下面程序输入两个运算数x,y和一个运算符号op,然后输出该运算结果的值,例如输入3+5↙得到结果8;请判断下面程序的正误,如果错误请改正过来。 main() { floatx,y,r; charop; scanf(“%f%c%f”,&x,&op,&y); switch(op){ cas