c语言期末考试题及其答案.pdf
《c语言期末考试题及其答案.pdf》由会员分享,可在线阅读,更多相关《c语言期末考试题及其答案.pdf(14页珍藏版)》请在冰豆网上搜索。
![c语言期末考试题及其答案.pdf](https://file1.bdocx.com/fileroot1/2022-10/19/46edaaa3-da4d-44fd-9a01-04c5629cb6ca/46edaaa3-da4d-44fd-9a01-04c5629cb6ca1.gif)
C语言期末考试题及其答案一一选择题(选择题(7777分,每小题分,每小题0.50.50.50.5分)分)1.C语言源程序的基本单位是()。
A过程B函数C子程序D标识符2.下列程序的输出结果是()。
main()inta=7,b=5;printf(%dn,b=b/a);A5B1C0D不确定值3.假设变量a,b均为整型,表达式(a=5,b=2,ab?
a+:
b+,a+b)的值是()。
A7B8C9D24.设a为int型变量,执行下列赋值语句后,a的取值分别是()。
a=125.534;a=(int)125.521%4;a=52;A125,31,1B125,1,20C125,31,20D125.534,2,205.设有如下程序段,下面描述中正确的是()。
intk=10;while(k=0)k=k-1;A循环执行一次B循环是无限循环C循环体语句一次也不执行D循环体语句执行一次6.以下程序的输出结果为()。
inti;voidprt()for(i=5;i8;i+)printf(%c,*);printf(t);main()for(i=5;inB+p-nCp-n+D(*p).n+14.C语言中的文件类型只有()。
A索引文件和文本文件两种B文本文件一种C二进制文件一种DASCII码文件和二进制文件两种二二判断对错,对的划判断对错,对的划“”,错的划,错的划“”(5555分,每小题分,每小题0.50.50.50.5分)分)1在TurboC中,整型数据在内存中占2个字节。
()2inti=20;switch(i/10)case2:
printf(A);case1:
printf(B);的输出结果为A。
()3break语句用在循环体中,可结束本层循环,continue语句用在循环体中,可结束本次循环。
()4函数的递归调用不过是一个函数直接或间接地调用它自身。
()5函数strlen(ASDFGn)的值是7。
()6通过return语句,函数可以带回一个或一个以上的返回值。
()7结构体类型只有一种。
()8char*p=girl;的含义是定义字符型指针变量p,p的值是字符串girl。
()9若有定义:
char*p(chara10);则p是函数名。
()10用fopen(file,r+);打开的文件file可以进行修改。
()三三写出下列程序的运行结果(写出下列程序的运行结果(10101010分,每小题分,每小题2222分)分)1.floataverage(floatarray10)inti;floataver,sum=array0;for(i=1;i10;i+)sum=sum+arrayi;aver=sum/10;return(aver);main()floatscore1089,67.5,78,91,56,82.5,65,70,79,88,aver;inti;aver=average(score);printf(“averagescoreis%5.2fn”,aver);2.main()chara5=A,B,C,D,E,*p=a,*pa;for(p=0;pa+5;p+)printf(“%2c”,*p);printf(“n”);printf(“%2cn”,*(pa=&p);3.main()inta,b,s=0;for(a=1,b=1;a=20)break;if(b%3=1)b+=3;continue;b-=5;printf(“a=%dtb=%dn”,a,b);4.main()printf(“main():
%dn”,fact(5);fact(-5);fact(intvalue)intf;if(value0)printf(“Argerrorn);return(-1);elseif(value=1|value=0)f=1;elsef=value*fact(value-1)+1;printf(“Thiscalledvalue=%dn”,f);returnf;5.main()inta=012,b=0x12,k=12;charc=102,d=r;printf(“a=%dtb=%dtk=%dn”,a,b,k);printf(“c=%c,d=%c%on”,c,d,a);a=A;c=49;printf(“a=%dtc=%cn”,a,c);四四阅读下列程序阅读下列程序,在在处填入适当内容,使程序完整(处填入适当内容,使程序完整(88分,每个空分,每个空11分)分)1.有一个3*4矩阵,求其中的最大元素。
max_value
(1)inti,j,max;max=array00;for(i=0;i3;i+)for(j=0;jmax)max=arrayij;
(2);main()inta34,i,j;for(i=0;i3;i+)for(j=0;j4;j+)(3);printf(“maxvalueis%dn”,max_value(a);2.输入x、y两个整数,按先大后小的顺序输出x、y。
#include“stdio.h”main()intx,y,*px,*py,(4);scanf(“%d%d”,&x,&y);(5);(6);if(xy)p=px;px=py;py=p;printf(“x=%d,y=%dn”,x,y);printf(“MAX=%d,MIN=%dn”,*px,*py);3.用选择排序法对任意10个整数按照由小到大排序。
main()inta11,i,j,k,t;printf(Pleaseinput10numbers:
n);for(i=1;i11;i+)scanf(%d,&ai);printf(n);for(i=1;iak)k=j;if(k!
=i)t=ak;ak=ai;ai=t;printf(Thesortednumbers:
n);for(i=1;i11;i+)printf(%d,ai);答案答案一一选择题(选择题(7777分,每小题分,每小题0.50.50.50.5分)分)1.B2.C3.B4.B5.C6.A7.B8.A9.A10.C11.A12.A13.B14.D二二判断对错,对的划判断对错,对的划“”,错的划,错的划“”(5555分,每小题分,每小题0.50.50.50.5分)分)1.2.3.4.5.6.7.8.9.10.四四阅读下列程序阅读下列程序,在在处填入适当内容,使程序完整(处填入适当内容,使程序完整(8888分,每个空分,每个空1111分)分)1.
(1)intarray34(intarray4)
(2)return(max)(3)scanf(“%d”,&aij)2.(4)*p(5)px=&x(py=&y)(6)py=&y(px=&x)3.(7)(8)2003C2003C2003C2003C语言试题语言试题3333一一选择题(选择题(2424分,每小题分,每小题22分)分)1已知函数fread的调用形式为fread(buffer,size,count,fp),其中buffer代表的是()。
A存放读入数据项的存储区B存放读入数据的地址或指向此地址的指针C一个指向所读文件的文件指针D一个整形变量,代表要读入的数据项总数2以下程序的输出结果为()。
main()inti=010,j=10;printf(%d,%dn,i+,j-);A11,9B9,10C8,10D9,93设a为int型变量,执行下列赋值语句后,a的取值分别是()。
a=125.534;a=20.0/3;a=(int)125.521%4;a=52;A125,6,31,1B125,6,1,20C125,6.666666,31,20D125.534,6.666666,2,204设i和k都是int类型,则for循环语句()。
for(i=0,k=-1;k=1;i+,k+)printf(*n);A循环结束的条件不合法B循环体一次也不执行C循环体只执行一次D是无限循环5以下程序的输出结果为()。
main()charc;inti;for(i=65;i68;i+)c=i+32;switch(c)casea:
caseb:
casec:
printf(%c,c);break;default:
printf(end);Aa,b,c,endBa,a,a,endCa,a,a,Da,b,c,6函数调用语句:
fseek(fp,-10L,2);的含义是()。
A将文件位置指针从文件末尾处向文件头的方向移动10个字节B将文件位置指针从当前位置向文件头的方向移动10个字节C将文件位置指针从当前位置向文件末尾方向移动10个字节D将文件位置指针移到距离文件头10个字节处7以下程序的输出结果为()。
main()chars140=country,s220=side;inti=0,j=0;while(s1i!
=0)i+;while(s2j!
=0)s1i+=s2j+;s1i=0;printf(%sn,s1);AsideBcountryCsidetryDcountryside8下列说法不正确的是()。
A主函数main中定义的变量在整个文件或程序中有效B不同函数中,可以使用相同名字的变量C形式参数是局部变量D在一个函数内部,可以在复合语句中定义变量,这些变量只在本复合语句中有效9在下列程序段中,枚举变量c1的值是()。
enumcolorred,yellow,blue=4,green,whitec1;c1=yellow;c1=white;A1B3C5D610设有说明int(*ptr)();其中标识符ptr是()。
A是一个指向整形变量的指针B是一个指针,它指向一个函数值是int的函数C是一个函数名D定义不合法11定义由n个指向整形数据的指针组成的数组p,其正确的方式为()。
Aintp;Bint(*p)n;Cint*pn;Dint(*p)();12具有相同类型的指针类型变量p与数组a,不能进行的操作是()。
Ap=a;B*p=a0;Cp=&a0;Dp=&a;二二判断对错,对的划判断对错,对的划“”“”,错的划,错的划“”“”(2020分,每小题分,每小题22分)分)1参加位运算的数据可以是任何类型的数据。
()2若有定义和语句:
inta;charc;floatf;scanf(%d,%c,%f,&a,&c,&f);若通过键盘输入:
10,A,12.5,则a=10,c=A,f=12.5。
()3C语言把文件看作是一个字符(字节)的序列。
()4若有宏定义:
#defineS(a,b)t=a;a=b;b=t由于变量t没定义,所以此宏定义是错误的。
()5在TurboC中,下面的定义和语句是合法的:
file*fp;fp=fopen(a.txt,r);()6若有定义:
charschina;则TurboC系统为数组s开辟6个字节的内存单元。
()7若有定义和语句:
inta333,5,8,9,12,35,i,sum=0;for(i=0;i3;i+)sum+=ai2-i;则sum=21。
()8若有定义和语句:
structstudentintnum;charname10;floatscore;s5=1,lili,98.5,9,xiaohua,66,*p=s;printf(%d,*p+);输出结果是1。
()9在程序中定义了一个结构体类型后,可以多次用它来定义具有该类型的变量。
()10在TurboC中,此定义和语句是合法的:
enumaaa5,b,cbb;bb=(enumaa)5;()三三写出下列程序的运行结果(写出下列程序的运行结果(3636分,每小题分,每小题66分)分)1.main