三 阅读理解题(共5题,每题4分,共20分)
基本题型:选择结果、循环结构、函数、递归、指针、动态与静态变量等常用算法 1.以下程序的运行结果是__B_____。
#include void main( ) { int score=85;
switch ((score-50)/10) {case 5:
case 4:printf(“A”);break; case 3:printf(“B”);break; case 2:printf(“C”);break; case 1:printf(“D”);break;
default:printf(“E”);
} }
(2013-6) #include void main() { int x=2, y=-1,z=2; if(x void main() { int grade=95; switch(grade/10) { default: printf(\ case 6:printf(\ case 7: case 8:printf(\ case 9: case 10:printf(\ } } 结果:A 安徽省二级C笔试13年12月 第 9 页 (共 17 页 )
2.以下程序的运行结果是___2766___。
#include void main() {
int sum=0; int i,j=0;
for(i=1;i<=4;i++) {
j=j*9+3;
sum=sum+j; }
printf(“sum=%d\\n”,sum);
}
2012-6 #include void main() { int i,j; for(i=2;i<10;i++) { for(j=2;j=i) printf(\ } printf(\} 结果:2 3 5 7 安徽省二级C笔试13年12月 第 10 页 (共 17 页 )
3.以下程序的运行结果是__53___。
#include void swap(int*a,int*b) { int t; t=*a; *a=*b; *b=t;} void main() { Int i=3,j=5; swap(&I,&j); printf(“%d%d”,i,j); }
【2013-6】 #include void main() { Char a[]=”program”b[]=”language”; char *p1,*p2; int i; p1=a; p2=b; for(i=0;i<8;i++) if(*(p1+i)==*(p2+i)) printf(“%c”,*(p1+i)); } [2012-12] 以下程序的运行结果为_______。 #include”stdio.h” void main() {char s1[]=”ABCDEFGH”, s2[ ]=”abCDefGh”; char *p1,*p2; printf(“%s\\n”,s1); printf(“%s\\n”,s2); for(p1=s1,p2=s2;*p1!=’\\0’;p1++,p2++) if(*p1!=*p2) printf(“%c”,*p1);} 结果:ABEFH ,结果:ga 安徽省二级C笔试13年12月 第 11 页 (共 17 页 )
4.以下程序的运行结果是___。
#include int f(int n) { if(n= =1) return 1; else return 3*f(n-1)+2; }
void main()
{ printf(“%d\\n”,f(1)); printf(“%d”,f(4)); }
1 53
[2012-12] #include”stdio.h” int fun(int n) { if(n==1) return(5); else return(10+fun(n-1));} void main() { int num; num=fun(5); printf(“%d\\n”,num);} 递推 F(5)=10+f(4) F(4)=10+f(3) F(3)=10+f(2) F(2)=10+f(1) F(1)=5 逆推 F(2)=10+f(1)=10+5=15 F(3)=10+f(2)=10+15=25 F(4)=10+f(3)=10+25=35 F(5)=10+f(4)=10+35=45 递推 F(4)=3*f(3)+2 F(3)=3*f(2)+2 F(2)=3*f(1)+2 F(1)=1 逆推 F(2)=3*f(1)+2=3*1+2=5 F(3)=3*f(2)+2=3*5+2=17 F(4)=3*f(3)+2=3*17+2=53 [2012-6] #include int f(int n) { if (n==1 || n==2) return 1; else return f(n-1)+f(n-2); } void main() { int m,n; m=f(2); n=f(6); printf(\} 结果:1 8 递推 F(6)=f(5)+f(4) F(5)=f(4)+f(3) F(4)=f(3)+f(2) F(3)=f(2)+f(1) F(2)=1 F(1)=1 逆推 F(3)=f(2)+f(1)=1+1=2 F(4)=f(3)+f(2)=2+1=3 F(5)=f(4)+f(3)=3+2=5 F(6)=f(5)+f(4)=5+3=8 安徽省二级C笔试13年12月 第 12 页 (共 17 页 )