c语言考试及答案_第1页
c语言考试及答案_第2页
c语言考试及答案_第3页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

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

文档简介

1、c语言考试及答案作者:日期:浙江理工大学C程序设计试题(一)试题二、语言基础题(本题共30分)(一) 判断题(本题共10分,每小题1分)说明:在以下提供的若干陈述中,逐一判断其正确与否,选A表示正确,选B表示错误。(16) C语言程序的三种基本结构是顺序、选择和嵌套。(17) 在C语言程序中,在函数内部定义的变量称为全局变量。(18) 运算符“=”和“&=”的优先级相同。(19) %f'是不正确的字符常量。(20) 运算符“+”不能作为单目运算符。(21) 如果运算符“*”和“/”都是右结合的,则表达式10*6/5的值是10。(22) s(s-a)(s-b)(s-c)是合法的C

2、语言表达式。(23) 表达式!6的值是6。(24) 表达式(2<<1)的值是5。(25) 对于变量定:inta10,*p=a+8;数组a的最后一个元素是p1。(二) 单选题(本题共20分,每小题2分)执行语句printf(”(26)","A");将得到出错信息。A、%uB、%sC、%eD、%d设c是一个字符变量,求解表达(27)后,c的值不是1就是0。A、c=getchar()!='n'B、(c=getchar()!)='n'C、c='1'D、c=EOF下列定义中,(28)定义的变量可以存放-123.4。

3、A、longa;B、unsignedb;C、intd;D、floatc;对于变量定义;char*pp100,pp是一个_(29)。A、函数B、数组元素C、指针变量D、数组下列程序段的输出结果是(30。char*st="SUM","MOON","STAR","X"printf("(%s,%c)",*(st+1)+1,*(*(st+2)+2)+2)A、(MOONM)B、(OONC)C、(OONQ)D、(OONA)(31)对于以下的变量定义,表达式(31)是不正确的。structnodefloatx,

4、y;chars10;point,*p=&point;B、(*p).y=3.0D、pf="a"A、px=2.0C、point.x=2.0(32)下列程序段的输出结果是(32)inta=10,b=0;if(a>15)b=1;elseif(a<2)b=2;elseb=3printf("%d",b);C、1(33)只有当输入数据满足(33)只有当输入数据满足1<=month<=12时,循环语句(33)才能正常退出。A、doscanf("%d",&month);while(month>=1IImon

5、th<=12);B、doscanf("%d",&month);while(month>=1&&month<=12);C、doscanf("%d",&month);while(month<1IImonth>12);D、doscanf("%d",&month);while(month<=1IImonth>=12);34)调用函数f(27)的输出结果是(34)。voidf(intn)if(n<5)printf("%d",n);else

6、printf("%d",n%5);f(n/5);A、102B、201C、21(35)下列程序段的输出结果是(35)。intk=3,j=4;int*p=&k,*q=&j;(*p)-;j=k;(*q)-printf("(%d,%d)",k,j);D、20A、(2,1)B、(1,2)A、(2,1)B、(1,2)C、(4,3)D、(3,3)试题三、程序填空题(每空2分,共20分)说明:阅读下列程序说明和相应的程序,在每小题提供的若干可选答案中,挑选一个正确答案。程序1、【程序说明】输入一批以-1结束的整数,求偶数和。【程序】#include<

7、;stdio.h>voidmain()intx,sum;sum=0;scanf("%d",&x);(36)_if(37)sum=sum+x;printf(sum=%d,sum);程序2、(36)A、while(x=-1)B、while(x!=-1)C、if(x=-1)D、if(x!=-1)(37)A、x=2B、x%2=2C、x%2=0D、x/2=0(38)A、scanf("%d",&x)B、scanf("%d",x)C、sum=0D、x=sum【程序说明】a是一个3X3的矩阵,输入a的元素,如果a是下三角矩阵,输

8、出“YES”,否则,输出“NO”。(下三角矩阵,即对角线以上的元素都为0,主对角线为从矩阵的左上角至右下角的连线。)【程序】#include<stdio.h>voidmain()intflag,i,k;inta33;for(i=0;i<3;i+)for(k=0;k<3;k+);scanf("%d",&aik);(39)_;for(i=0;i<3&&flag;i+)for(k=i+1;k<3&&flag;k+)if(一(40)一)一(41;if(flag)printf("YESn"

9、);elseprintf("NOn”);(39)A、flag=0B、flag=0C、flag=1D、flag=1(40)A、aki!=0B、aik=0C、aik!=0D、aki=0(41)A、flag=0B、flag=0C、flag=1D、flag=1程序3、【程序说明】输入一个字符串,将其中的大写字母转换为小写字母后输出。【程序】#inelude<stdio.h>voidmain()charstr80;intk;程序4、gets(str);for(k=0;strk!='0'k+);(42)if(42)puts(str);一)(431;A、'A&#

10、39;<=strk<='Z'B、strk>'A&&strk<'Z'C、strk>='A'&&strk<='Z'D、strk>=''strk<=''(43)A、strk=strk-32B、strk=strk-a+'A'C、tolower(strk)D、strk=strk-A'+'a'【程序说明】请仔细阅读函数f1,然后在函数功能。【程序】intf1(chars)intk=0;

11、while(sk!='0'k+;returnk;请仔细阅读函数f1,然后在函数功能。【程序】intf1(chars)intk=0;while(sk!='0'k+;returnk;f2中填入正确的内容,使函数f1和函数f2有相同的intf2(char*s)char*ss;(44);(44) A、s=ss(45) A、ss-s(46) A、s=ss(47) A、ss-sB、ss=sB、S-SS-1whs=eULC、s-ssD、s=NULD、s-ss+1试题四、程序阅读题(每小题5分,共15分)说明:阅读下列程序,将运行的输出结果写在答卷纸的相应题号下。1、程序1#i

12、nclude<stdio.h>voidmain()intj,k;floatf,s;s=0;f=1;for(k=1;k<3;k+)for(j=1;j<k;j+);f=f*k;s=s+f;printf("%.0f#”,s);2、程序2#include<stdio.h>voidmain()longfun(Iongnumber);printf(%1dn”,fun(-974);longfun(Iongnumber)intflag;longres=0flag=number<0?-1:1;if(number<0)number=-numberwhile

13、(number!=0)res=res*10+numbr%10number/=10printf(%d#',res);returnflag*res;3、程序3#include<stdio.h>#inelude<std1ib.h>voidmain()FILE*in;char*string仁”IFYOUFAILTOPLAN”;char*string2=”YOUPLANTOFAIL”;if(in=fopen('file1.txt”,”w")!=Null)while(*string2!='0')fputc(*string2+,in);fcl

14、ose(in);if(in=fopen('file1.txt","r")!=NULL)while(fgetc(in)!=EOF)putchar(*string1+);fclose(in);10个fact(n)double。10个fact(n)double。试题五、程序设计题(每题10分,共20分)输入10个整数,找出其中绝对值最小的数,将它和最后一个数交换,然后输出这数。1. 输入一个正实数x和一个正整数n,求下列算式的值。要求定义和调用2个函数:计算n的阶乘;mypow(x,n)计算x的n次幕(即xn),2个函数的返回值类型都是234n2!3!4!()n

15、!C程序设计试题1考试答案与评分标准试题二(一)、判断题(每小题1分,满分10分)(16)(17)(18)(19)(20)(21)(22)(23)(24)(25)BBAAAABBAA(二)、单选题(每小题2分,满分20分)(26)(27)(28)(29)(30)(31)(32)(33)(34)(35)CDDCBBACBA(三)、程序填空题(每小题2分,满分20分)(36)(37)(38)(39)(40)(41)(42)(43)(44)(45)BCADBACDBD四、程序阅读题(每小题5分,满分15分)程序1程序21#3#4#47#479#-479程序3程序4IFYOUFAILTOP五、程序设计

16、题(每小题10分,满分20分)1、#include<stdio.h>#inelude<math.h>intmain()intn,i,a10,t,min,minpot;scanf("%d",&a0);min=a0;minpot=0;for(i=1;i<10;i+)scanf("%d",&ai);if(fabs(ai)<fabs(min)min=ai;minpot=i;t=a9;a9=aminpot;aminpot=t;for(i=0;i<10;i+)if(i>0)printf("");printf("%d",ai);printf("n”);2、#inelude&l

温馨提示

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

评论

0/150

提交评论