您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 商业计划书 > 2012秋C程序设计试卷+问题详解
实用标准文档文案大全华南农业大学期末考试试卷(A卷)2012学年第1学期考试科目:程序设计(C语言)考试类型:(闭卷)考试考试时间:120分钟学号姓名年级专业考生注意:1、答案必须分别写在“机读卡”和“答卷”上,写在试题上不得分。2、必须在机读卡和答卷上正确填写班级、学号、姓名等内容,否则没有考试成绩。3、在机读卡的学生代号区只填写学号后10位。4、考试结束,只需交“机读卡”和“答卷”,试题不用交。一、判断题(在机读卡上答题,本大题共20小题,每小题1分,共20分)用2B型铅笔涂答题卡!!!按题号顺序,正确的判断涂黑“A”、错误的判断涂黑“B”1、C语言称为中级语言是因为它允许直接访问物理地址,能进行位运算,能实现汇编语言的大部分功能,可以直接对硬件进行操作。2、一个C程序总是从main函数开始执行,并且从main函数中结束程序。3、一个算法具有有穷性、确定性、可行性、有零个或多个输入/输出。4、在C程序中使用符号常量,能够增强程序的可读性,方便程序的修改。5、C程序中使用变量不一定要遵循“先定义,再赋值,后使用”。6、C语言可以通过调用标准库函数实现输入输出功能,也可以使用它本身提供的专门的输入输出语句。7、能正确表达逻辑关系100x的表达式是10||0xx。8、在if语句中,if后面的表达式可以是关系表达式与逻辑表达式,而不能是算术表达式。9、在逻辑表达式的求解过程中,并非所有的逻辑运算符都被执行。10、带有语句标号的语句的正确书写方法是“语句标号:语句”。11、for循环语句只能用于循环次数已经确定的情况。12、goto语句和break语句都能实现使程序执行的流程从循环体内跳至循环体外。13、while循环语句至少无条件执行一次循环体。题号一二三四总分得分评阅人机读机读得分实用标准文档文案大全14、数组必须先定义,然后再使用。15、定义数组时,数组下标可以是整型常量表达式。16、已有定义intx[5];,则该定义语句说明x是具有5个元素的一维数组,且数组元素是x[1],x[2],x[3],x[4],x[5]。17、一个函数中有且只能有一个return语句。18、在一个函数中定义的静态局部变量不能被另一个函数引用。19、宏名没有作用域,在整个文件范围内都有效。20、在文件包含预处理语句中,被包含的文件应该是目标文件而不是源文件。二、单项选择题(在机读卡上答题,本大题20小题,每小题2分,共40分)用2B型铅笔涂答题卡!!!按题号顺序,将答题卡上与选项对应的字母涂黑21、在一个C程序中()。A)main函数出现在所有函数之前。C程序不一定都有main函数B)main函数可以在任何地方出现。一个C程序必须有且仅有一个main函数C)main函数必须出现在所有函数之后。一个C程序只能有一个main函数D)main函数出现在固定位置。一个C程序可以有多个main函数22、C语言中,下列叙述正确的是()。A)没有逻辑类型,但有构造类型B)既有逻辑类型也有构造类型C)有逻辑类型,但没有构造类型D)没有逻辑类型也没有构造类型23、下列转义字符中,错误的是()A)'\'B)'\031'C)'\b'D)'\0xa5'24、已知梯形的上底为a,下底为b,高为h,用C语言写的正确的面积公式是()。A)1/2*(a+b)*hB)1.0/2*(a+b)*hC)1.0/2.0(a+b)hD)1.0\2*a+b*h25、已有定义chars1,s2;,下面正确的语句是()A)scanf(%s%c,s1,s2);B)scanf(%s%c,s1,&s2);C)scanf(%d%c,&s1,&s2);D)scanf(%c%c,s1,s2);26、运行下面的程序,正确的输出结果是()main(){floatx=68.7563,y=-789.125;printf(%f,%10.2f\n,x,y);得分实用标准文档文案大全}A)68.756303,-789.12B)68.756303,-789.13C)68.7563,-789.13D)68.7563,-789.1227、下列表达式中,值为0的表达式是()A)3!=0B)3!=34C)34==0D)65428、设a=3,b=2,c=6,d=5,m=7,n=8,则表达式(m=ab)&&(n=c-d)运算后,m,n的值分别是()A)0和1B)0和8C)1和0D)7和829、下列程序的运行结果是()main(){intm=8,n=34,k;while((k=m%n)!=0)m=n,n=k;printf(%d,n);}A)语法错误B)8C)2D)3430、下面程序的运行结果是()main(){intn=1,s=5;do{s=s*n;n++;}while(n5);}A)120B)6C)100D)20031、下面程序的运行结果是()#includestdio.hvoidmain(){inti,j,sum;for(i=1;i7;i++){sum=1;for(j=i;j7;j++)sum=sum+j;}}A)48B)49C)1D)7实用标准文档文案大全32、定义如下变量和数组inti;intx[3][3]={1,2,3,4,5,6,7,8,9};for(i=0;i3;i++)printf(%d,x[i][2-i]);则语句的输出结果是()。A)159B)147C)357D)36933、不能把字符串Hello!赋给数组a的语句是()A)chara[10]={'H','e','l','l','o','!'};B)chara[10];a=Hello!;C)chara[10];strcpy(a,Hello!);D)chara[10]=Hello!;34、若有ints[4]={1,2,3,4};,则s[s[0]+2*s[2]-s[3]]的值是()A)1B)2C)3D)435、C语言程序的三种基本结构是()A)嵌套结构、递归结构、循环结构B)递归结构、循环机构、转移结构C)顺序结构、选择结构、循环结构D)循环结构、转移结构、顺序结构36、若函数的调用形式如下:f((x1,x2,x3),(y1,y2))则函数形参的个数是()。A)2B)3C)4D)537、执行下列程序后的输出结果是()。inta=3,b=4;voidfun(intx1,intx2){printf(%d,%d,x1+x2,b);}main(){inta=5,b=6;fun(a,b);}A)3,4B)11,1C)11,4D)11,638、以下函数值的类型是()fun(floatx)实用标准文档文案大全{floaty;y=3*x-4;return(y);}A)不确定B)floatC)intD)void39、C编译系统对文件包含命令#includefile.h的处理通常是()。A)编译处理之前B)编译处理过程之中C)程序连接时D)程序执行的开始40、设有以下宏定义,则执行语句x=2*(N+Y(5+1));后,x(设x为整型)的值是()#defineN3#defineY(n)((N+1)*n)A)42B)48C)54D)出错三、阅读程序填空题(在答卷上答题,本大题共9小题,每空1分,共20分)1、下面程序统计1至100范围的数能被3或5整除的个数,请填空完善。#includestdio.hvoidmain(){inti,n;01);for(i=1;i=100;02))if(03))n++;printf(n=%d,n);}2、某物品原有价值为p,使用后其价值降低,价值的折扣率根据时间t(月数)确定如下:折扣折扣折扣折扣无折扣10%21t8%21t125%12t62%6t33t下面程序根据输入的时间和原有的价值计算物品的现有价值,请填空完善程序。#includestdio.hvoidmain(){intt,d;floatp;得分1.5CM实用标准文档文案大全scanf(%d,%f,&t,&p);switch(04)){case0:d=0;break;case1:d=2;break;case2:case3:d=5;break;case4:case5:case6:d=8;break;05):d=10;}printf(Price=%f\n,06));}3、该程序利用下面公式计算∏的近似值,取前n项之和,请填空完善程序。71513114/#includestdio.hvoidmain(){inti,n;floatt=1.0,pi=0;scanf(%d,07));for(i=1;i=n;i++){pi+=08);t=-t;}printf(pi=%f,pi*4);}4、下面程序判断输入字符串是否为回文(正读和逆读都一样的字符串),请填空完善程序。#includestdio.hvoidmain(){charstr[80];intn,k,flag=1;gets(str);for(n=0;str[n]!='\0';n++);for(k=0;kn/2;k++)if(09)){flag=0;break;}if(10))printf(不是回文!\n);elseprintf(是回文!\n);}实用标准文档文案大全5、下面程序的功能是输出若干个字符串中长度最短的字符串,注意输入时直接按回车输入的是空字符串,请填空完善程序。#includestring.h#includestdio.hvoidmain(){charstr1[80],min[80];intk,len;printf(inputstringstr1:\n);gets(str1);strcpy(min,str1);len=strlen(min);gets(str1);while(str1[0]!='\0'){k=strlen(str1);if(11)){len=k;12);}gets(str1);}printf(len=%d,min=%s\n,len,min);}6、下面函数的功能实现对一维数组中元素数据由小到大顺序排序,请填空完善程序。voidsort(inta[],intn){inti,j,t;for(i=0;in-1;i++)for(j=1;j13);j++)if(14)){t=a[j-1];a[j-1]=a[j];a[j]=t;}}7、下列函数str_cat()的功能是连接两个字符串,请填空完善程序。voidstr_cat(charstr1[],charstr2[2],charstr[]){inti,j;for(i=0;str1[i]!='\0';i++)str[i]=str1[i];for(j=0;str2[j]!='\0';j++)15);16);}8、下面程序的功能是用递归方法计算n!,请填空完善程序。实用标准文档文案大全#includestdio.hdoublefac(intn){doublek;if(n=0)exit(0);/*exit()返回操作系统*/elseif(n==1)k=1.0;else17);returnk;}voidmain(){intn;scanf(%d,&n);printf(FAC(%d)=%lf\n,n,18));}9、下面程序的功能是通过键盘输入10个整数,并把其中最大的数和最小的数显示出来。#includestdio.h19)voidsearch(inta[],intn){inti;max=min=a[0];for(i=1;in;i++){if(a[i]max)max=a[i];if(a[i]min)min=a[i];}}voidmain(){intarray[10],i;for(i=0;i10;i++)scanf(%d,&array[i]);search(20))printf(max=%d,min=%d\n,max,min);}得分实用标准文档文案大全四、编写程序题(在答卷上答题,本大题共3小题,第1,2小题各5分;第3小题10分,共20分)1、编程计算分数序列,,,
本文标题:2012秋C程序设计试卷+问题详解
链接地址:https://www.777doc.com/doc-5599878 .html