您好,欢迎访问三七文档
当前位置:首页 > 医学/心理学 > 药学 > C语言练习题2(分支结构循环结构数组函数2009-2012二级真题)
C语言练习题(二)一选择题1.有以下程序#includestdio.hvoidmain(){inta;scanf(“%d”,&a);if(a++9)printf((“%d\n”,a);elseprintf((“%d\n”,a--);}程序运行时键盘输入9回车,则输出的结果是A10B11C9D82.有以下程序#includestdio.hvoidmain(){ints=0,n;for(n=0;n3;n++){switch(s){case0:case1:s+=1;case2:s+=2;break;case3:s+=3;case4:s+=4;}printf((“%d\n”,s);}}程序运行后的结果是A1,2,4B1,3,6C3,10,14D3,6,103.若k是int类型变量,且有以下for语句for(k=-1;k0;k++)printf(“****\n”);下面关于语句执行情况的叙述中正确的是A循环体执行一次B循环体执行两次C循环体一次也不执行D构成无限循环4.有以下程序#includestdio.hvoidmain(){charA,B,C;B=’1’;C=’A’for(A=0;A6;A++){if(A%2)putchar(B+A);elseputchar(C+A);}}程序运行后输出的结果是A1B3D5FBABCDFECA2C4E6D1234565.fun函数的功能是:通过键盘输入给x所指的整型数组所有元素赋值。在下列划线处应该填写的是#includestdio.h#defineN5voidfun(intx[N]){intm;for(m=N-1;m0;m--)scanf(“%d\n”,);}A&x[++m]B&x[m+1]Cx+(m++)Dx+m6.有以下函数#includestdio.h#includestring.hvoidmain(){printf(“%d\n”,strlen(“ATS\n012\1”));}程序运行后的输出结果是A3B8C4D97.有以下函数#includestdio.hvoidmain(){chara[20],b[20],c[20];scanf(”%s%s”,a,b);gets(c);printf(”%s%s%s\n”,a,b,c);}程序运行时从第一行开始输入thisisacat!回车,则输出结果是Athisisacat!BthisisaCthisisacat!Dthisisacat!8.有以下函数#includestdio.hviodfun(charc){if(c’x’)fun(c-1);printf(“%c”,c);}voidmain(){fun(‘z’);}程序运行输出结果是AxyzBwxyzCzyxwDzyx9、有以下函数#includestdio.hviodfunc(intn){inti;for(i=0;i=n;i++)printf(“*”);printf(“#”);}main(){func(3);printf(“????”);func(4);printf(“\n”);}程序运行输出结果是A****#????***#B***#????*****#C**#????*****#D****#????*****#(10)有以下程序#includestdio.hmain(){inta=1,b=0;if(--a)b++;elseif(a=0)b+=2:elseb+=3:printf(%d\n,b);)程序运行后的输出结果是()。A)0B)1C)2D)3(11)下列条件语句中,输出结果与其他语句不同的是()。A)if(a)printf(%d\-n,x);elseprintf(%d\n,y);B)if(a==0)printf(%d\n,y);elseprintf(%d\n,x);C)if(a!=0)p由printtf(%d\n,x);elseprintf(%d\n,y);D)if(a==0)printf(%d\n,x);elseprintf(%d\n,y);(12)有以下程序#includestdio.hmain(){inta=7;while(a--);printf(%d\n,a);)程序运行后的输出结果是()。A)-1B)0C)1D)7(13)有以下程序#includestdio.hdoublef(doublex);main(){doublea_0;inti;for(i=0;i30;i+=10)a+=f((double)i);printf(%5.0f\n,a);}doublef(doublex)(returnX+x+1;)程序运行后的输出结果是()。A)503B)401C)500D)1404(14)以下定义数组的语句中错误的是()。A)intnum[]={1,2,3,4,5,6};B)intnum[][3]={{1,2},3,4,5,6};C)intnum[2][4]=({1,2,,{3,4},{5,6});D)intnum[][4]={1,2,3,4,5,6};(27)(15)有以下程序#includestdio.h#defineN4voidfun(inta[][N],imb[]){inti;for(i=0;iN;i++)b[i]=a[i][i]-a[i][N-1-i];)voidmain(){intx[N][N]={{1,2,3,4},{5,6,7,8},{9,10,11,12},{13,14,15,16}},y[N],i;fun(x,y);for(i=0;iN;i++)printf(”%d,”,y[i]);printf(\n);}程序运行后的输出结果是()。A)-12,-3,0,0,B)-3,-1,1,3,C)0,1,2,3,D)-3,-3,-3,-3(16)以下程序的主函数中调用了在其前面定义的fun函数#includestdio.h{main(){doublea[15],k;k=fun(a);}则以下选项中错误的fun函数首部是()。A)doublefun(doublea[15])B)doublefun(double*a)C)doublefun(doublea[])D)doublefun(doublea)(17)有以下程序#includestdio.h#includestring.hmain(){chara[5][10]={china,beijing,you,tiananmen,welcome”);inti,j;chart[10];for(i=0;i4;i++)for(j=i+1;j5;j++)if(strcmp(a[i],a[j])O){strcpy(t,a[i]);strcpy(a[i],a[j]);strcpy(a[j],t);}puts(a[3]);)程序运行后的输出结果是()。A)BeijingB)chinaC)welcomeD)tiananmen(18)有以下程序#includestdio.hintf(intm){staticintn=0;n+=m:returnn;)main(){intn=0;printf(%d,f(++n));printf(%d\n,f(n++));)程序运行后的输出结果是()。A)1,2B)1,1C)2,3D)3,3(19)有以下程序#includestdio.hmain(){charch[3][5]={AAAA,BBB,CC);printf(%s\n,ch[1]);}程序运行后的输出结果是()。A)AAAAB)CCC)BBBCCD)BBB(20)有以下程序段charname[20];intnum;scanf(name=%snum=%d,name;&num);当执行上述程序段,并从键盘输入:name=Lilinum=1001回车后,name的值为A)LiliB)name=LiliC)Lilinum=D)name=Lilinum=1001(21)if语句的基本形式是:if(表达式)语句,以下关于“表达式”值的叙述中正确的是A)必须是逻辑值B)必须是整数值C)必须是正数D)可以是任意合法的数值(22)有以下程序#includestdio.hmain(){intx=011;printf(%d\n,++x);}程序运行后的输出结果是A)12B)11C)10D)9(23)有以下程序#includestdio.hmain(){ints;scanf(%d,&s);while(s0){switch(s){case1:printf(%d,s+5);case2:printf(%d,s+4);break;case3:printf(%d,s+3);default:printf(%d,s+1);break;}scanf(%d,&s);}}运行时,若输入123450回车,则输出结果是A)6566456B)66656C)66666D)6666656(24)有以下程序段inti,n;for(i=0;i8;i++){n=rand()%5;switch(n){case1:case3:printf(%d\n,n);break;case2:case4:printf(%d\n,n);continue;case0:exit(0);}printf(%d\n,n);}以下关于程序段执行情况的叙述,正确的是A)for循环语句固定执行8次B)当产生的随机数n为4时结束循环操作C)当产生的随机数n为1和2时不做任何操作D)当产生的随机数n为0时结束程序运行(25)有以下程序#includestdio.hmain(){chars[]=012xy\08s34f4w2;inti,n=0;for(i=0;s[i]!=0;i++)if(s[i]='0'&&s[i]='9')n++;printf(%d\n,n);}程序运行后的输出结果是A)0B)3C)7D)8(26)若i和k都是int类型变量,有以下for语句for(i=0,k=-1;k=1;k++)printf(*****\n);下面关于语句执行情况的叙述中正确的是A)循环体执行两次B)循环体执行一次C)循环体一次也不执行D)构成无限循环(27)有以下程序#includestdio.hmain(){charb,c;inti;b='a';c='A';for(i=0;i6;i++){if(i%2)putchar(i+b);elseputchar(i+c);}printf(\n);}程序运行后的输出结果是A)ABCDEFB)AbCdEfC)aBcDeFD)abcdef(28)有以下程序段#includemain(){while(getchar()!='\n');}以下叙述中正确的是A)此while语句将无限循环B)getchar()不可以出现在while语句的条件表达式中C)当执行此while语句时,只有按回车键程序才能继续执行D)当执行此while语句时,按任意键程序就能继续执行(29)有以下程序#includemain(){intx=1,y=0;if(!x)y++;elseif(x==0)if(x)y+=2;elsey+=3;printf(%d\n,y);}程序运行后的输出结果是A)3B)2C)1D)0(30)有以下程序#includemain(){chara[30],b[30];scanf(%s,a);gets(b);printf(%s\n%s\n,a,b);}程序运行时若输入:howareyou?Iamfine回车则输出结果是A)howareyou?B)howIamfineareyou?IamfineC)howareyou?IamfineD)rowareyou?(31)设有如下函数定义intfun(intk){if(k1)return0;elseif(k==1)return1;elsereturnfun(k-1)+1;}若执行调用语句:n=fun(3);,则函数fun总共被调用的次数是A)2B)3C)4D)5
本文标题:C语言练习题2(分支结构循环结构数组函数2009-2012二级真题)
链接地址:https://www.777doc.com/doc-2908418 .html