吉林大学珠海学院-C语言试卷 A卷

发布时间:

..
2009季学期专业
C语言程序设计》期末试卷(A卷)
卷面总分:100答题时间:120分钟
专业年级班级学号
题号得分





总分
一、单项选择题(本题共30个小题,每小题1分,30分,请将答案代号填涂到机读卡上,在试卷上所写答案,视为0分)
1、以下叙述中错误的是(
AC语言运算功能丰富
BC语言可以不用编译就能被计算机识别执行
CC语言允许直接访问物理地址,直接对硬件进行操作DC语言属于结构化的程序设计语言
2、在C语言中,整型常量的表示方法不包括(
A二进制B八进制C十进制D十六进制3、以下选项中不属于C语言的关键字的是(
AtypedefBstructCintDCHAR4、源程序要正确地运行,必须要有什么函数(
Aprintf函数B自定义的函数Cmain函数D不需要函数5、这段程序中的变量是(#include#definePI3.14voidmain({
intsum;
sum=10+15;
printf("sum=%d\n",sum;printf("resultis25\n";}
A10BsumC15DPI
word..

..
6、算法具有五个特性,以下选项中不属于算法特性的是(A)有穷性B简洁性C)可行性D)确定性7、字符型常量在内存中存放的是(
AASCIIBBCDC)内部码D)十进制码8、下面哪个表达式的值为4
A11/3B11.0/3
C(float11/3D(int(11.0/3+0.59、假设变量ab已经定义为整型,指出下面错误的表达式(
Aa=a++B5.6+6.2%3.1C1&&2Da=1,b=210、该源程序执行后,输出结果是(
#includevoidmain({
inta;floatb;a=4;b=9.5;
printf("a=%d,b=%4.2f\n",a,b;}
Aa=%d,b=%f\nBa=%d,b=%fCa=4,b=9.50Da=4,b=9.511、以下的for循环是(
for(x=0,y=0;(y!=123&&(x<4;x++;
A无限循环B循环次数不定C执行4D执行3
12、从以下给出的表达式中选出与while(E语句中的(E不能等价的表达式(A(!E==0B(E>0||(E<0C(E!=0D(E==013C语言中,逻辑“真”等价于(
A)大于零的数B)不大于零的整数C非零的数D)非零的整数14、以下程序的输出结果是(
#includemain(
{intnum=0;while(num<=2{num++;
printf(%2d\n,num;}}
A1B12C123D1234
word..


..
15、下列变量名中合法的是(
AB.C.TomB3a6bC_6a7bD$ABC
16、设有定义语句intc[4][3];,则以下对数组元素的引用形式中正确的是(
Ac[2+1][1-1]Bc[2,3]Cc[4][3]Dc[2+1,2]
17、若有定义语句doublex[2][2]={0.0};则以下叙述正确的是(
A该语句存在语法错误
B该语句使二维数组x的所有元素初值都为0.0C该语句只为数组元素x[0][0]赋初值为0.0D该语句为数组元素x[2][2]赋初值为0.0
18、以下选项中,不是C语言合法字符串常量的是(
A\121By=C\n\nDABCD\x6d19、函数strcmp(abc,x的返回值是(
A小于0B)等于0C)大于0D)不确定20、下列函数定义中正确的是(Afloatcal(floatx;floaty{return(x*y;}
Bfloatcal(floatx,y{return(x*y;}Cintcal(x,y{floatx,y;return(x*y;}Dintcal(x,yfloatx,y;
{return(x*y;}
21、在函数的说明和定义时若没有指出函数的类型,则(
A系统自动地认为函数的类型为整型B)系统自动地认为函数的类型为字符型C)系统自动地认为函数的类型为实型D)编译时会出错
22、在inta[]={1234}中,数组元素a[2]的值是(
A1B2C3D423、在下面程序中,属于全局变量的是(
#includestructstudent{
intnum;char*name;charsex;floatscore;
}stu2,stu1={1002,"LiuQing",'M',82.5};
word..

..
main({intn;
floats;stu2=stu1;n=stu1.num;s=stu2.score;
printf("Number=%d\nName=%s\n",n,stu2.name;printf("Sex=%c\nScore=%f\n",stu2.sex,s;}
AstudentBstu2CnDs24、下面程序的输出结果是(
#includesub2(intn{
returnn+1;}
sub1(intn{inti,a=0;
for(i=n;i>0;i--a+=sub2(i;returna;}
main({intn=3;
printf("%d\n",sub1(n;}
A5B7C8D9
25、设有定义:inta,*pa=&a;以下scanf语句中能正确为变量a读入数据的是(Ascanf(%d,pa;Bscanf(%d,a;Cscanf(%d,&pa;Dscanf(%d,*pa;26、下面程序中,哪个变量的值保存在cpu的寄存器里(
#includeintn=1000;main(
{staticintsum=0;registerinti;
for(i=1;i<=n;i++sum+=i;
printf("sum=%ld\n",sum;}
AnBsum
CiD这段程序中没有寄存器变量
word..


..
27、若有两个基本类型相同的指针p1,p2,则下列运算不合理的是(Ap1+p2Bp1-p2
Cp1=p2Dp1==p228、为字符数组赋值,下列方法中错误的是(
Acharstr[5]=ok;Bcharstr[5];gets(str;Ccharstr[5];
scanf(%s,str;Dcharstr[5];str=ok;
29、下面哪个是正确的引用结构体变量成员(
structstudent
{intnum;charname;}stu1,*p;p=&stu1;
Astu1->.numB*stu1.num
Cstudent.numDp->num30、下面程序的输出结果是(
#includemain(
{printf("%d\n",NULL;}
A0B1
C-1DNULL没定义,出错
二﹑判断题(本大题共10小题,每小题2分,共20分,请将“正确”用“A”表示,“错误”用“B表示,填涂到机读卡上,在试卷上所写答案,视为0分)1C语言属于高级语言。
2)关键字INT可以用来定义整型变量。
3)若有charx;sizeof(xsizeof(char两种描述中,二者都正确。4)数组元素作为函数的参数进行地址传递。5)在C语言中,076是一个十进制整数。6)结构体可以嵌套定义。
7do-while循环的特点是:先判断循环条件,再执行循环体语句。
8)主函数中定义的变量比较特殊,属于全局变量,在整个程序中都是有效的。9)用C语言编程时,变量可以不定义,直接使用。
10)定义结构体类型,说明了该类结构体数据的组织形式,在编译程序时系统会给结构体类型分配空间。
三﹑填空题(本大题共4小题,每小题4分,共16分,请将答案填写到下面表格内,不得修改原题和原程序,修改者视为0分,未将答案填写在表格内,视为0分)
word..

..
1234





1C语言规定,标识符只能由__________________3种字符组成,而且,第一个字符不能是
______
2、结构化程序设计的三种基本结构是______结构﹑______结构和______结构,能够实现选择结构的语句有______语句和switch语句。
3、在C语言中,实现循环的语句有:if-goto语句﹑while语句﹑______语句和______句,break语句在循环控制中用于结束______continue语句在循环控制中用于结束______4、下面程序的功能是:用冒泡排序法将5个数字从小到大排列,请填空:#______#defineN5main(
{inta[N];
inti,j,t,exchange;
printf("Input%dnumbers:\n",N;for(i=0;i
scanf("______",&a[i];
for(j=1;j<=N-1;j++/*控制比较的趟数*/{exchange=0;
for(i=0;i两两比较的次数*/if(a[i]>a[i+1]{t=a[i];
a[i]=______;a[i+1]=______;exchange=1;}
if(exchange==0break;}
printf("Thesortednumbers:\n";for(i=0;i
printf("%4d",a[i];}
四﹑读程序写结果(本大题共5小题,每小题2分,共10分,请将答案填写到下面表格内,未填写在表格内,视为0分)
1
2345
1、写出该程序运行结果
word..



..
#includemain(
{inta=10,y=0;do
{a+=2;y+=a;
printf(a=%dy=%d\n,a,y;if(y>20break;}while(a=14;}
____________________
2、写出该程序运行结果
#includemain(
{voidincrement(void;increment(;increment(;}
voidincrement(void{staticintx;x++;
printf(%d\n,x;}
____________________
3、写出该程序运行结果
#includestdio.hintage(intn{intc;
if(n==1c=10;elsec=age(n-1+2;return(c;}
main({
printf(%d,age(4;printf(%d,age(5;}
____________________
4、写出该程序运行结果
word..

..
#includemain({
int*point1,*point2,*point;inta=1,b=2;
point1=&a,point2=&b;point=point1;point1=point2;point2=point;
printf(%d,%d\n,a,b;
printf(%d,%d,*point1,*point2;}
____________________
5、写出该程序运行结果
#includemain(
{structinfo
{charname[20];
intyear,month;
}person_1;
strcpy(person_1.name,"LiuDeHua";person_1.year=1961;person_1.month=9;
printf("\nName:%s",person_1.name;
printf("\nBirthday:%d.%d",person_1.year,person_1.month;}
____________________
五﹑程序设计(本大题共4小题,每小题6分,共24分)
1、输入整数x,根据x的值来确定y的值,若x>0,那么y=x,否则y=-x2、编写程序,求10的阶乘(10=1×2×3×……×103数组inta[5]={7869938275},保存的是一个学生五门课的成绩,求其总分和平均分。
2
4、编写函数,求表达式x-5x+4的值,x由主函数输入。
2009年春季学期
word..

..
C语言程序设计》试题A答案
一、选择题(本大题共30小题,每小题1分,共30分)
1-10BADCBBAD11-20CDCCCABB21-30ACBDACAD
二、判断题(本大题共10小题,每小题2分,共20分)
1-10

BADCDA
ABABBABBBB
三、填空题(本大题共4小题,每小4分,共16分)灰色底纹部分顺序任意
1234
字母顺序do-whileinclude
数字选择for%d
下划线循环本层循环a[i+1]
数字if本次循环t

四、读程序写结果(本大题共5小题,每小题2分,共10分)
1a=12y=12a=16y=28
2345
1161,2
Name:LiuDeHua
2182,1
Birthday:1961.9

五、程序设计(本大题共4小题,每小题6分,共24分)酌情按步骤给分
1#includemain({intx,y;
printf(pleaseinputx:;scanf(%d,&x;if(x>0y=x;
elsey=-x;
printf(y=%d\n,y;}
2#includemain(
{inti,p=1;
for(i=1;i<=10;i++p*=i;
printf("p=%d\n",p;}
3#includemain(
{inti,sum=0,a[5]={78,69,93,82,75};floatave;
for(i=0;i<5;i++sum+=a[i];ave=sum/5.0;
printf(sum=%4d\n,sum;printf(ave=%5.1f,ave;}
4#includeintfun(intx
{returnx*x-5*x+4;}main({
intx;
scanf(“%d”,&x;
printf(“x*x-5*x+4=%d\n”,fun(x;
word}..

吉林大学珠海学院-C语言试卷 A卷

相关推荐