2008年下半年新生二级C笔试试题.doc_第1页
2008年下半年新生二级C笔试试题.doc_第2页
2008年下半年新生二级C笔试试题.doc_第3页
2008年下半年新生二级C笔试试题.doc_第4页
2008年下半年新生二级C笔试试题.doc_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

园艺场电脑 志在必得,有我相助2008年下半年计算机二级C笔试试题一、选择题(每题2分,共计70分)1、C语言程序的基本单位是A)程序行B)语句C)函数D)字符2、以下选项中不合法的标识符是A)printB)FORC)&aD)_003、以下选项中不属于字符常量的是A)CB)CC)xCCD)0724、设变量已经正确定义并赋值,一下正确的表达式是A)x=y*5=x+zB)int(15.8%5)C)x=y+z*5,+yD)x=25%5.05、以下定义语句中正确的是A)int a=b=0;B)char A=65+1,b=b;C)float a=1,*b=&a,*c=&b;D)double a=0.0;b=1.1;6、有以下程序段charch;int k;ch=a;k=12;printf(%c,%d,ch,ch,k);printf(k=%dn,k);已知字符a的ASCII十进制代码为97,则执行上述程序段后输出的结果是A)因变量类型与格式描述符的类型不匹配输出无定值B)输出项与格式描述符个数不符,输出为零值或不定值C)a,97,12k=12D)a,97,k=127、已知字母A的ASCII代码值为65,若变量kk为char型,一下不能正确判断出kk中的值为大写字母的表达式是A)kk=A&kk=A|kk=a&(kk+32)=zD)isalpha(kk)&(kk=2&c=2&c=2&cb)a=b;c=a;if(c!=a)c=b;printf(%d,%d,%dn,a,b,c);其输出的结果是A)程序段有语法错B)3,4,3C)3,5,5D)3,5,710、有以下程序#includemain()intx=1,y=0,a=0,b=0;switch(x)case1:switch(y)case0:a+;break;case1:b+;break;case2:a+;b+;break;case3:a+;b+;printf(a=%d,b=%dn,a,b);程序运行的结果是A)a=1,b=0B)a=2,b=2C)a=1,b=1D)a=2,b=111、有以下程序#includemain()intx=8;for(;x0;x-)if(x%3)printf(%d,x-);continue;printf(%d.,-x);程序运行的结果是A)7,4,2.B)8,7,5,2.C)9,7,6,4.D)8,5,4,2.12、以下不构成无限循环的语句或语句组是A)n=0;B)n=0;do+n;while(n=0);while(1)n+;C)n=10;D)for(n=0,i=1;i+)n+=i;while(n);n-; 13、有以下程序#includemain()inta=1,2,3,4,y,*p=&a3;-p;y=*p;printf(y=%dn,y);程序运行的结果是A)y=0B)y=1C)y=2D)y=314、以下错误的定义语句是A)intx3=0,1,1,2,3;B)intx43=1,2,3,1,2,3,1,2,3,1,2,3;C)intx4=1,2,3,1,2,3,1,2,3,1,2,3;D)intx3=1,2,3,415、设有如下程序段chars20=Beijing,*p;p=s;则执行p=s语句后,一下描述正确的是A)可以用*p表示s0B)s数组中元素的个数和p所指字符串长度相等C)s和p都是指针变量D)数组s中的内容和指针变量p中的内容相同16、若有定义inta23;以下选项中对a数组元素正确引用的是A)a2!1B)a23C)a03D)a12!117、有定义语句:chars10;,若要从终端给s输入5个字符,错误的输入语句是A)gets(&s0);B)scanf(%s,s+1);C)gets(s);D)scanf(%s,s1);18、有以下程序#include main()ints12=1,2,3,4,4,3,2,1,1,1,2,3,c5=0,i;for(i=0;i12;i+)csi+;for(i=1;i5;i+)printf(%d,ci);printf(n);程序运行的结果是A)1 2 3 4B)2 3 4 4C)4 3 3 2D)1 1 2 319、若有定义语句:inta23,*p3;,则以下语句中正确的是A)p=a;B)p0=a;C)p0=&a12;D)p1=&a;20、有以下程序#includeintf(intx)inty;if(x=0|x=1)return(3);y=x*x-f(x-2)returny;main()intz;z=f(3);printf(%dn,z);程序的运行结果是A)0B)9C)6D)821、有以下程序#includevoidfun(char*a,char*b)while(*a=*)a+;while(*b=*a)b+;a+;)main()char*s=*a*b*,t80;fun(s,t);puts(t);程序的运行结果是A)*a*bB)a*bC)a*b*D)ab22、有以下函数intaaa(char*s)char*t=s;while(*t+);t-;return(t-s);以下关于aaa函数的功能叙述正确的是A)求字符串s的长度B)比较两个串的大小C)将串s复制到串tD)求字符串s所占字节数23、有以下程序#includevoidfun(char*p)+p;printf(%sn,*p);main()char*a=Morning,Afternoon,Evening,Night;fun(a);程序的运行结果是A)AfternoonB)fternoonC)MorningD)orning24、有以下程序#includevoidfun(int*a,intn)/*fun函数的功能是将a所指数组元素从大到小排序*/intt,i,j;for(i=0;in-1;i+)for(j=i+1;jn;j+)if(aaj)t=a;a=aj;aj=t;main()intc10=1,2,3,4,5,6,7,8,9,0,i;fun(c+4,6);for(i=0;i10;i+)printf(%d,c);printf(n);程序运行的结果是A)1,2,3,4,5,6,7,8,9,0,B)0,9,8,7,6,5,1,2,3,4,C)0,9,8,7,6,5,4,3,2,1,D)1,2,3,4,9,8,7,6,5,0,25、若有定义语句:inta36;,按在内存中的存放顺序,a数组的第10个元素是A)a04B)a13C)a03D)a1426、有以下程序#includemain()inty=9;for(y0;y-)if(y%3=0)printf(%d,-y);程序的运行结果是A)741B)963C)852D)87542127、有以下程序#includemain()inti,j,m=55;for(i=1;i=3;i+)for(j=3;j=i;j+)m=m%j;printf(%dn,m);程序的运行结果是A)0B)1C)2D)328、若函数调用时的实参为变量时,以下关于函数形参和实参的叙述中正确的是A)函数的实参和其对应的形参共占同一存储单元B)形参只是形式上的存在,不占用具体存储单元C)同名的实参和形参占同一存储单元D)函数的形参和实参分别占用不同的存储单元29、以下叙述中错误的是A)改变函数形参的值,不会改变对应实参的值B)函数可以返回地址值C)可以给指针变量赋一个整数作为地址值D)当在程序的开头包含文件stdio.h时,可以给指针变量赋NULL 30、有以下程序main()inti,t3=9,8,7,6,5,4,3,2,1;for(i=0;i3;i+)printf(d,t2-ii);程序执行后的输出结果是A)753B)357C)369D)75131、有以下程序fun(charp10)intn=0,i;for(i=0;i7;i+)if(pi0=T)n+;returnn;main()charstr10=Mon,Tue,Wed,Thu,Fri,Sat,Sun;printf(dn,fun(str);程序执行后的输出结果是A)1B)2C)3D)032、有以下程序main()inti,s=0,t=l,2,3,4,5,6,7,8,9;for(i=0;i9;i+=2)s+=*(t+i);printf(dn,s);程序执行后的输出结果是A)45 B)20 C)25 D)3633、有以下程序voidfun1(char*p)char*q;q=p;while(*q!=0)(*q)+;q+;)main()chara=Program),*p;p=&a3;fun1(p);printf(sn,a);程序执行后的输出结果是A)Prohsbn B)Prphsbn C)Progsbn D)Program 34、有以下程序voidswap(char*x,char*y)chart;t=*x;*x=*y;*y=t;main()char*s1=abc,*s2=123;swap(s1,s2);printf(s,sn,s1,s2);程序执行后的输出结果是A)123,abcB)abc,123C)1bc,a23D)321,cba35、有以下程序intfun(intn)if(n=1)return1;elsereturn(n+fun(n-1);main()intx;scanf(d,&x);x=fun(x);printf(dn,x);执行程序时,给变量X输入10,程序的输出结果是A)55 B)54 C)65 D)45二、填空题(每空2分,共计30分) 1、以下程序的功能是:输出a、b、c三个变量中的最小值.请填空。#includemain()inta,b,c,t1,t2;scanf(%d%d%d,&a,&b,&c);t1=ab?_1_;t2=ct1?_2_;printf(%dn,t2);2、以下程序的输出结果是_3_.#includemain()intn=12345,d;while(n!=0)d=n%10;printf(%d,d);n/=10;3、有以下程序段,且变量已正确定义和赋值for(s=1.0,k=1;k=n;k+)s=s+1.0/(k*(k+1);printf(s=%fnn,s);请填空,使下面程序段的功能为完全相同s=1.0;k=1;while(_4_)s=s+1.0/(k*(k+1);_5_;printf(s=%fnn,s);4、以下程序的输出结果是_6_.#includemain()inti;for(i=a;if;i+,i+)printf(%c,i-a+A);printf(n);5、以下程序的输出结果是_7_.#include#includechar*fun(char*t)char*p=t;return(p+strlen(t)/2);main()char*str=abcdefgh;str=fun(str);puts(str);6、以下程序统计从终端输入的字符中大写字母的个数,num0中统计字母A的个数,num1中统计字母B的个数,其它依次类推.用#号结束输入,请填空.#include#includemain()intnum26=0,i;charc;while(_8_)!=#)if(isupper(c)numc-A+=_9_;for(i=0;i26;i+)Printf(%c:%dn,i+A,num);7、执行以下程序的输出结果是_10_.#includemain()inti,n4=1;for(i=1;i=3;i+)n=ni-1*2+1;printf(%d,n);8、已有定义:charc= ;inta=1,b;(此处c的初值为空格字符),执行b=!c&a;后b的值为10 _。9、设变量已经正确定义为整形,则表达式n=i=2,+i,i+的值为12 _。10、若有定义:intk;,以下程序段的输出结果是13 _fo

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论