C语言期末考试试题(谭浩强版).pdf

上传人:ylj18****41534 文档编号:80696618 上传时间:2023-03-23 格式:PDF 页数:17 大小:573.13KB
返回 下载 相关 举报
C语言期末考试试题(谭浩强版).pdf_第1页
第1页 / 共17页
C语言期末考试试题(谭浩强版).pdf_第2页
第2页 / 共17页
点击查看更多>>
资源描述

《C语言期末考试试题(谭浩强版).pdf》由会员分享,可在线阅读,更多相关《C语言期末考试试题(谭浩强版).pdf(17页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、C 语言期末考试试题 2008 年 04 月 12 日 星期六 00:22 一 选择题(24 分,每小题 2 分)1已知函数 fread 的调用形式为 fread(buffer,size,count,fp),其中 buffer 代表的是()。A 存放读入数据项的存储区 B 存放读入数据的地址或指向此地址的指针 C 一个指向所读文件的文件指针 D 一个整形变量,代表要读入的数据项总数 2以下程序的输出结果为()。main()int i=010,j=10;printf(”d,%dn,i+,j-);A 11,9 B 9,10 C 8,10 D 9,9 3设 a 为 int 型变量,执行下列赋值语句后

2、,a 的取值分别是()。a=125.534;a=20.0/3;a=(int)125.521%4;a=52;A 125,6,31,1 B 125,6,1,20 C 125,6。666666,31,20 D 125。534,6.666666,2,20 4设 i 和 k 都是 int 类型,则 for 循环语句()。for(i=0,k=1;k=1;i+,k+)printf(”*n);A 循环结束的条件不合法 B 循环体一次也不执行 C 循环体只执行一次 D 是无限循环 5以下程序的输出结果为()。main()char c;int i;for(i=65;i68;i+)c=i+32;switch(c)c

3、ase a:case b:case c:printf(%c,c);break;default:printf(end”);A a,b,c,end B a,a,a,end C a,a,a,D a,b,c,6函数调用语句:fseek(fp,-10L,2);的含义是()。A 将文件位置指针从文件末尾处向文件头的方向移动 10 个字节 B 将文件位置指针从当前位置向文件头的方向移动 10 个字节 C 将文件位置指针从当前位置向文件末尾方向移动 10 个字节 D 将文件位置指针移到距离文件头 10 个字节处 7以下程序的输出结果为().main()int i=0,j=0;while(s1i!=0)i+;w

4、hile(s2j!=0)s1i+=s2j+;s1i=0;printf(%sn”,s1);A side B country C sidetry D countryside 8下列说法不正确的是()。A 主函数 main 中定义的变量在整个文件或程序中有效 B 不同函数中,可以使用相同名字的变量 C 形式参数是局部变量 D 在一个函数内部,可以在复合语句中定义变量,这些变量只在本复合语句中有效 9在下列程序段中,枚举变量 c1 的值是().enum color red,yellow,blue=4,green,whitec1;c1=yellow;c1=white;A 1 B 3 C 5 D 6 10

5、设有说明 int(ptr)();其中标识符 ptr 是().A 是一个指向整形变量的指针 B 是一个指针,它指向一个函数值是 int 的函数 C 是一个函数名 D 定义不合法 11定义由 n 个指向整形数据的指针组成的数组 p,其正确的方式为()。A int p;B int(*p)n;C int*pn;D int(p)();12具有相同类型的指针类型变量 p 与数组 a,不能进行的操作是().A p=a;B*p=a0;C p=a0;D p=a;二 判断对错,对的划“”,错的划“”(20 分,每小题 2 分)1参加位运算的数据可以是任何类型的数据.()2若有定义和语句:int a;char c;

6、float f;scanf(”%d,c,f,a,&c,&f);若通过键盘输入:10 A 12 5 则 a=10,c=A,f=12.5。()3C 语言把文件看作是一个字符(字节)的序列.()4若有宏定义:#define S(a,b)t=a;a=b;b=t 由于变量 t 没定义,所以此宏定义是错误的。()5在 Turbo C 中,下面的定义和语句是合法的:file*fp;fp=fopen(”a.txt”,”r);()6若有定义:char s china;则 Turbo C 系统为数组 s 开辟 6 个字节的内存单元。()7若有定义和语句:int a333,5,8,9,12,35,i,sum=0;f

7、or(i=0;i3;i+)sum+=ai2i;则 sum=21。()8若有定义和语句:struct student int num;char name10;float score;s5=1,”lili”,98。5,9,xiaohua”,66,*p=s;printf(”d”,*p+);输出结果是 1。()9在程序中定义了一个结构体类型后,可以多次用它来定义具有该类型的变量.()10在 Turbo C 中,此定义和语句是合法的:enum aa a5,b,cbb;bb=(enum aa)5;()三 写出下列程序的运行结果(36 分,每小题 6 分)1.main()int i=29,j=6,k=2,s

8、;s=i+i/jk-9;/s=i+(i/j)k9 printf(“s=dn”,s);2。main()int x=31,y=2,s=0;do s=x*y;x+=2;y-=3;while(x3=0);/先执行,后判断 printf(“x=dty=%dts=%dn”,x,y,s);3.main()int a610,20,30,40,50,60,i;invert(a,0,5);for(i=0;i6;i+)printf(“%d,”,ai);printf(“n”);invert(int s,int i,int j)/倒置 int t;if(i main()char str=The C program,c;

9、int i;for(i=2;(c=stri)!=0;i+)switch(c)case g:+i;break;/由于+i,跳过了 g 后面的 1 个字母 case o:continue;default:printf(“%c,c);continue;printf(“*);printf(“n”);5.struct w/结构体 char low;char high;;union u /共用体 struct w byte;short word;uw;main()int result;uw。word=0 x1234;printf(word value:%04xn,uw。word);printf(”high

10、 byte:02xn,uw。byte。high);printf(low byte:%02xn”,uw.byte。low);uw。byte.low=0 x74;printf(word value:04xn”,uw。word);result=uw。word+0 x2a34;printf(the result:%04xn”,result);6 main()char s2=”I love China!”,s1=&s2;char s3,c,*s4=w”;s3=&c;s3=H;s2=s2+2;printf(%stct%stcn,s2,s3,s4,*s1);四 阅读下列程序,在 处填入适当内容,使程序完整(

11、20 分,每个空 2 分)1。百马百担问题:有 100 匹马,驮 100 担货,大马驮 3 担,中马驮 2 担,两匹小马驮1 担,问大、中、小马各多少匹?main()int hb,hm,hl,n=0;for(hb=0;hb=100;hb+=(1))for(hm=0;hm=100hb;hm+=(2)hl=100hb-(3);if(hb/3+hm/2+2*(3)=100)n+;printf(hb=d,hm=%d,hl=dn”,hb/3,hm/2,2hl);printf(”n=%dn,n);2.用“起泡法对输入的 10 个字符排序后按从小到大的次序输出.define N 10 char strN;v

12、oid main()int i,flag;for(flag=1;flag=1;)scanf(s”,str);flag=0;printf(”n);sort(_(4)_);for(i=0;istri+1)t=stri;_(5)_;_(6)_;/交换位置 3。以下程序是一个函数,功能是求二阶矩阵(m 行 n 列矩阵)的所有靠外侧的各元素值之和.(本程序中二阶矩阵用一维数组来表示.)例如,矩阵为:3 0 0 3 2 5 7 3 1 0 4 2 则所有靠外侧的各元素值之和为 3+0+0+3+2+3+1+0+4+2=18。add(int m,int n,int arr)for(i=0;im;i=i+m1)

13、for(j=0;jn;j+)sum=sum+_(7)_;for(j=0;jn;j=j+n1)for(i=1;_(8)_;i+)sum=sum+arri*n+j;return(sum);4.用指针作函数参数,编程序求一维数组中的最大和最小的元素值。define N 10 main()void maxmin(int arr,int pt1,int*pt2,int n);int arrayN=10,7,19,29,4,0,7,35,16,21,p1,*p2,a,b;p1=a;p2=&b;maxmin(array,p1,p2,N);printf(”max=%d,min=%d”,a,b);void ma

14、xmin(int arr,int pt1,int pt2,int n)int i;*pt1=pt2=arr0;for(i=1;in;i+)if(arript1)_(9)_;if(arri*pt2)_(10)_;答案 一 选择题(24 分,每小题 2 分)1.(B)2。(C)3.(B)4。(D)5.(D)6。(A)7.(D)8.(A)9.(D)10.(B)11.(C)12.(D)二 判断对错,对的划“”,错的划“”(20 分,每小题 2 分)1.()2.()3。()4。()5.()6.()7。()8。()9。()10。()三 写出下列程序的运行结果(36 分,每小题 6 分)1。s=20 2。x=35 y=4 s=29 3.60,50,40,30,20,10,4.e C pram 5.word value:1234 6。love China!H w l high byte:12 low byte:34 word value:1274 the result:3ca8 四 阅读下列程序,在 处填入适当内容,使程序完整(20 分,每个空 2 分)1.(1)3(2)2(3)hm hl 2.(4)str(5)stri=stri+1(6)stri+1=t 3。(7)arri*n+j(8)im1 4。(9)*ptr1=arri(10)ptr2=arri

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > 解决方案

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com