您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 项目/工程管理 > C语言程序设计试卷1
1徐州师范大学试卷(20-20学年度学期)(考试日期:年月日)院系计算机学院专业计算机科学与技术课程名称:成绩题号一二三四合分人分值30202030得分得分一、单项选择题(每小题2分,共30分)在下列每小题的四个备选答案中选出一个正确的答案,并将其字母标号填入题目的横线上。1.以下叙述不正确的是_________A.一个C源程序可由一个或多个函数组成B.一个C源程序必须包含一个main函数C.C程序的基本组成单位是函数D.在C程序中,注释说明只能位于一条语句的后面2.以下程序段的输出结果是________inti=010,j=10;printf(“%d,%d\n”,++i,j--);A.11,10B.9,10C.010,9D.10,93.若x,i,j和k都是int型变量,则计算下面表达式后,x的值为_______x=(i=4,j=16,k=32);A.4B.16C.32D.524.若有说明语句:charc=’\72’;则变量cA.包含1个字符B.包含2个字符C.包含3个字符D.说明不合法,c的值不确定5.请阅读以下程序:main(){inta=5,b=0,c=0;if(a=b+c)printf(“***\n”);elseprintf(“$$$\n”);}以上程序________A.有语法错不能通过编译B.可以通过编译但不能通过连接C.输出***D.输出$$$6.设有说明ints[2]={0,1},*p=s;则下列错误的C语句是________A.s+=1;B.p+=1;C.*p++;D.(*p)++;7.下面程序段的运行结果是________x=y=0;while(x15)y++,x+=++y;printf(“%d,%d”,y,x);A.20,7B.6,12C.20,8D.8,208.C语言规定,简单变量做实参时,它和对应形参之间的数据传递方式是________A.地址传递B.单向值传递C.由实参传递给形参,再由形参传回实参D.由用户指定传递方式9.以下不正确的定义语句是________A.doublex[5]={2.0,4.0,6.0,8.0,10.0};B.inty[5]={0,1,3,5,7,9};C.charc1[]={‘1’,’2’,’3’,’4’,’5’};D.charc2[]={‘\x10’,’\xa’,’x8’};10.C语言允许函数值类型缺省定义,此时该函数值隐含的类型是____________A.float型B.int型C.long型D.double型11.若有宏定义如下:#defineX5#defineYX+1#defineZY*X/2则执行以下printf语句后,输出结果是________inta;a=Y;printf(%d\n,Z);printf(%d\n,--a);A.7B.12C.12D.7665512.有如下语句inta=10,b=20,*p1,*p2;p1=&a;p2=&b;如图1所示;若要实现图2所示的存储结构,可选用的赋值语句是p1p2p1p2abab图1图2A.*p1=p2;B.p1=p2;C.p1=*p2;D.*p1=p2;13.语句int(*ptr)();的含义是A.ptr是指向一维数组的指针变量B.ptr是指向int型数据的指针变量C.ptr是指向函数的指针,该函数返回一个int型数据D.ptr是一个函数名,该函数名的返回值是指向int型数据的指针14.若有以下说明和语句,则对pup中sex的正确引用方式是_____________structpupil注意:装订线外,勿写答案。班级学号姓名2{charname[20];intsex;}pup,*p;p=&pup;A.p.pup.sexB.p-pup.sexC.(*p).pup.sexD.(*p).sex15.以下可作为函数fopen中第一个参数的正确格式是_________A.c:user\text.txtB.c:\user\text.txtC.“c:\user\text.txt”D.“c:\\user\\text.txt”得分二、阅读程序(每小题10分,共20分)16.当从键盘输入18并回车后,写出下列程序的运行结果。main(){intx,y,i,a[8],j,u,v;scanf(“%d”,&x);y=x;i=0;do{u=y/2;a[i]=y%2;i++;y=u;}while(y=i);for(j=i-1;j=0;j--)printf(“%d”,a[j]);}17.写出下列程序的运行结果。#includestdio.hf(inta[]){inti=0;while(a[i]=10){printf(“%d”,a[i]);i++;}}main(){inta[]={1,5,10,9,11,7};f(a+1);}得分三、填空题(每空2分,共20分)18.下面程序以每行4个数据的形式输出a数组,请填空。#defineN20main(){inta[N],i;for(i=0;iN;i++)scanf(“%d”,);for(i=0;iN;i++){if(i%4==0)printf(“%3d”,a[i]);}printf(“\n”);}19.下面程序段将输出computer,请填空。charc[]=”It’sacomputer”;for(i=0;;i++){;printf(“%c”,c[j]);}20.下面的程序是判断输入的字符串是否是“回文”,(顺读和倒读都一样的字符串称回文,如level)。请填空。#includestdio.h#includestring.hmain(){chars[81],*p1,*p2;intn;gets(s)n=strlen(s);p1=s;p2=;while(){if(*p1!=*p2)break;else{p1++;;}}if(p1p2)printf(“no\n”);elseprintf(“yes\n”);}21.下面程序将二维数组a的行和列元素互换后存到另一个二维数组b中。请填空。main(){inta[2][3]={1,2,3,4,5,6};intb[3][2],i,j;printf(arraya:\n);for(i=0;i=1;i++)for(j=0;_________;j++){printf(%5d,a[i][j]);_____________;}printf(\n);printf(arrayb:\n);for(i=0;_________;i++){for(j=0;j=1;j++)printf(%5d,b[i][j]);printf(\n);}}得分四、编程题。(每题15分,共30分)22.打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数自身。例如:153是一个“水仙花数”,因为153=13+53+3323.编一函数,计算并输出k以内最大的10个能被13或17整除的自然数之和。其中,k的值由主函数传入。
本文标题:C语言程序设计试卷1
链接地址:https://www.777doc.com/doc-2908324 .html