南京工程学院C语言试卷3_第1页
南京工程学院C语言试卷3_第2页
南京工程学院C语言试卷3_第3页
南京工程学院C语言试卷3_第4页
南京工程学院C语言试卷3_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

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

文档简介

试卷3一、单项选择题(共20小题;每小题1分,共20分)1、下列常量不合法的是()。A.1。5E—2B.‘BASIC’C.0x122、下列变量名中不合法的是()。D.“\\good"A.iCount3、设变量已正确定义并赋值,以下正确的表达式是().A.b=7++B.x=3,++yC.a=7%3。0D.x=y+1=24、表达式sizeof(double)-sizeof(3。1f)+3/2的值是()。A.4B.5C.5.5D.1.55、下列各语句序列判别变量a、b的大小,若a<b则交换它们的值,其中正确的是().B.Stu_NOC.INTD.vc++A.if(a<b){t=a;a=b;b=t;}C.if(a〈b){a=b;b=a;}B.if(a〈b)a=b;b=a;D.if(a〈b)t=a;a=b;b=t;6、已知有程序段:inta=1,*p=&a,**q;q=&p;**q=3;printf(”%d\n”,a);则该程序段正确执行后输出结果为().A.1B.3C.该程序段有语法错D。该程序段没有输出结果7、若有说明:int*p,m=3,n;,则以下正确的程序段是()。A.p=&n;scanf(”%d”,&p);C.scanf(”%d",&n);*p=n;B.p=&&n;scanf("%d”,*p);D.p=&n;*p=m;8、设有以下说明语句,则下面的叙述中不正确的是().typedefstructstudent{longStuNO;charStuname[9];charsex;floatcscore;}STU;A.typedef是给类型起别名C.StuNO是结构体STU的一个成员9、有定义或声明:int*myf(floatx,longy);,若以下选项中的正确的是()。B.STU是结构变量名D.STU是结构类型名A。myf是指针数组;C。myf是指针函数;B.myf是数组指针;D.myf是函数指针;10、C语言中函数返回值的类型是由()决定的。A.传递给函数的实参类型B.return语句中的表达式类型D.定义函数时所指定的函数返回值类型C.调用该函数的主调函数类型11、若有宏定义:#defineFUN(x)x%x,则表达式FUN(2+3)的值为()。A.5B.0C.6D.712、设有定义语句:charc1=32,c2=32;则以下表达式中值为0的是()。A。c1^c2B。c1&c2C.~c2D。c1|c213、若有以下定义语句:intm[]={5,4,3,2,1},i=4;,则下面对m数组元素的引用中错误的是()。A.m[i]B.m[2*2]C.m[m[0]]D.m[m[i]]14、以下对二维数组arr的定义正确的是()。A.intarr[5][]={1,2,3};C.intarr[3][3]={0};B.intarr[][1]={{1,2,3},{4,5,6}};D.intarr[2][3]={1,2,3,4,5,6,7,8};15、若有定义语句:chars[]="hello\0theworld";,则strlen(s)的值是()。A.5B.6C.14D.1516、有定义inti=88,j=99,*p,*q;p=&i;q=&j;p=q;则printf(”%d%d”,*p,*q)结果是()。A.8888B.8899C.9999D.998817、已知有定义inta[8]={0},*p=a;,则不能表示a[1]元素的值的是()。A.*(p+1)B.*(++a)C.p[1]D.*&a[1]18、有定义如下:structtest{inta;intb[2];}s[3]={{111,1,2},{222,3,4},{333,5,6}};则s[1]。b[0]的值是()。A。3B。4C。5D。619、若要以写的方式创建新的文本文件,则在fopen函数中使用的打开方式是().A."w"B."rb”C.”rb+”D."a+b”20、若有定义:inta[5][2]={7,6,5,4,3,2,1},*p=a[1];则*(++p)的值是()。A。2B.3C.4D。5二、阅读程序题,写出下列程序的运行结果.(本题10小题,每小题3分,共30分)1、main(){FILE*fp;inti,buf[]={8,7,6,5,4,3,2,1};fp=fopen("mytest。dat",”wb+");fwrite(buf,sizeof(int),8,fp);fseek(fp,sizeof(int)*4,SEEK_SET);fread(buf,sizeof(int),4,fp);fclose(fp);for(i=0;i<8;i++)printf(”%d",buf[i]);}输出结果为:______________________________.2、main(){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=%d\n",a,b);}输出结果为:______________________________。3、#include<string。h〉main(){charp[20]={'a’,’b’,’c','d'},q[]="abc",r[]="abcde";strcpy(p+strlen(q),r);strcat(p,q);printf(”%d%d\n”,sizeof(p),strlen(p));}输出结果为:______________________________。4、以下程序设从键盘输入ABC后按〈Enter〉键。voidf(){charch=getchar();printf("%c”,ch);if(ch!=’\n')f();printf(”%c",ch);}voidmain(){f();}输出结果为:______________________________。5、main(){char*q[4]={”NANJING”,”BEIJING",”HANGZHOU”,”SHANGHAI"};char**p=q;for(inti=0;i<4;i++,p++)printf(”%c",*(*p+3)+1);}输出结果为:______________________________.6、intn;voidf(intn){staticinta=3;n+=2;a++;printf("%d%d",n,a);}main(){f(n);f(n=5);printf("%d”,n);}输出结果为:______________________________。7、main(){intx,y,z;x=y=z=0;++x||++y&&++z;printf("%d%d%d\n”,x,y,z);}输出结果为:______________________________。8、voidf(int*q){inti;for(i=0;i〈5;i++)—-(*q);}main(){inta[5]={6,6,6,6,6},i;f(a+2);for(i=0;i〈5;i++)printf(”%d",a[i]);}输出结果为:______________________________.9、main(){charstr[3][7]={"1234","5678”},*myp[2];inti,j,s=0;for(i=0;i<2;i++)myp[i]=str[i];for(i=0;i<2;i++)for(j=1;myp[i][j]!='\0’;j+=2)s=10*s+myp[i][j]—’0’;printf("%d\n",s);}输出结果为:______________________________。10、structNODE{intnum;structNODE*next;};main(){structNODEa[3]={{0,a+1},{0,a+2},{0,a}},*p=&a[0],*q=&a[1],*r=&a[2];p-〉num=77;q-〉num=88;r-〉num=99;p->next=q;q—〉next=r;r—>next=NULL;printf("%d\n”,p-〉next-〉next—>num);}输出结果为:______________________________.三、程序填空题(共7小题,每空2分,共20分)1、下面程序的功能是判断short型能表示的最大值。请填空。main(){shortn=0,m;while(1){m=n;n++;if(n〈0)_______________;}printf("%d\n",m);}2、建立一个链表,将存储在字符数组中的字符依次转储到链表的各个结点中.#include〈stdlib。h〉typedefstructnode{chardata;structnode*next;}NODE;NODE*CreatList(chars[]){NODE*head,*p,*last=NULL;while(*s!='\0’){p=______________________________;p—>data=*s++;p—>next=NULL;if(last!=NULL)last—>next=p;elsehead=p;last=p;}return_______________;}main(){chars[]="Hello2012!”;NODE*head;head=CreatList(s);}3、以下程序的功能是:输入两个整数,求出它们的最大公约数并输出,请填空.intgcd(inta,intb){intk;k=_______________;while(k!=0){a=b;b=k;k=a%b;}_______________;}main(){inta,b;scanf("%d%d”,&a,&b);printf("%d”,gcd(a,b));}4、将一个字符串中的小写字母变为大写字母,其他字符不变.main(){chars[]=”Hello,2012!",*q;q=s;while(*q){if(*q〉='a’&&*q<='z')_______________;q++;}printf("%s\n",s);}5、将有N个元素的数组a中的数据逐个前移,第一个元素移到最后面。如有数组:12345678移动后的结果为:23456781.#defineN8main(){inta[N]={1,2,3,4,5,6,7,8},i,t;t=_______________;for(i=0;i〈N—1;i++)_______________;a[N—1]=t;for(i=0;i<N;i++)printf("%d”,a[i]);}6。下面程序打出如下图案:****************main(){inti,j;for(i=1;i<=4;i++){for(j=1;j〈40-i;j++)printf(””);for(j=1;j〈=2*i—1;j++)_______________;printf(”\n");}}7。以下程序中函数fun的功能是:统计结构体数组中所有成绩不及格的女同学(sex为’F’)的个数,存入变量n中,并做为函数值返回。#defineN5typedefstructstduent{intno;charnam[9];charsex;floatscore;}STU;intfun(STUs[]){inti,n=0;for(i=0;i〈N;i++)if(______________________________)n++;returnn;}main(){STUa[N]={{1,"Kate”,’F’,88},{2,”Bob”,’M’,66},{3,”Tom",'M’,77},{4,”

温馨提示

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

评论

0/150

提交评论