ImageVerifierCode 换一换
格式:DOCX , 页数:17 ,大小:27.37KB ,
资源ID:6238079      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/6238079.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(c语言试题3.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

c语言试题3.docx

1、c语言试题3C语言程序设计(3)一、选择题(1)-(40)每小题1分,(41)-(50)每小题2分,共60分)下列各题 A) 、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。(1) 一个完整的计算机系统包括A) 主机、键盘与显示器 B) 计算机与外部设备C) 硬件系统与软件系统 D) 系统软件与应用软件(2) 十六进制数1000转换成十进制数是A) 4096 B) 1024 C) 2048 D) 8192(3) 十进制数269转换成十六进制数是A) 10E B) 10D C) 10C D) 10B(4) 如果用八位二进制补码表示带符号的

2、定点整数,则能表示的十进制数的范围是A) -127到+127 B) -128到+128 C) -127到+128 D) -128到+127(5) 下列设备中,既可作为输入设备又可作为输出设备的是A) 鼠标器 B) 打印机 C) 键盘 D) 磁盘驱动器 (21) 设a、b和c都是int型变量,且a=3,b=4,c=5,则下面的表达式中,值为0的表达式是A) a&b B) a=b C) a|b+c&b-c D) !(a=A&ch=Z)?(ch+32):ch上面表达式的值是A) A B) a C) Z D) z(24) 若x和y都是int型变量,x=100,y=200,且有下面的程序片段:print

3、f(%d,(x,y);上面程序片段的输出结果是A) 200 B) 100 C) 100 200 D) 输出格式符不够,输出不确定的值(25) 下面各语句行中,能正确进行赋字符串操作的语句行是A) char st45=ABCDE; B) char s5=A,B,C,D,E;C) char *s; s=ABCDE; D) char *s; scanf(%s,s);(26) 若k是int型变量,且有下面的程序片段:k=-3if(k=0) printf(#)else printf(&);上面程序片段的输出结果是A) # B) & C) #& D) 有语法错误,无输出结果(27) 若x是int型变量,且

4、有下面的程序片段:for(x=3; x6; x+) printf(x%2)?(*%d):(#%dn),x);上面程序片段的输出结果是A) *3 B) #3 C) #3 D) *3#4#4 *4 *4#5 *5*5 #5(28) 请读程序:#includef(char *s) char *p=s;while( *p!=0) p+;return(p-s);main() printf(%dn,f(ABCDEF);上面程序的输出结果是A) 3 B) 6 C) 8 D) 0(29) 请读程序:#includemain() int a; float b, c;scanf(%2d%3f%4f,&a,&b,&

5、c);printf(na=%d, b=%f, c=%fn, a, b, c);若运行时从键盘上输入9876543210(表示回车),则上面程序的输出结果是A) a=98, b=765, c=4321 B) a=10, b=432, c=8765C) a=98, b=765.000000, c=4321.000000 D) a=98, b=765.0, c=4321.0(30) 请读程序:#includemain() int n2, i, j, k;for(i=0;i2;i+) ni=0;k=2for(i=0;ik;i+)for(j=0;jk;j+) nj=nj+1;printf(%dn,nk)

6、;上面程序的输出结果是A) 不确定的值 B) 3 C) 2 D) 1(31) 请读程序片段:char str=ABCD, *p=str;printf(%dn,*(p+4);上面程序的输出结果是A) 68 B) 0 C) 字符D的地址 D) 不确定的值(32) 请读程序片段:#includemain() int a, b;for(a=1;b=1;a=20) break;if(b%3=1)b+=3;continue;b-=5;printf(%dn,a);上面程序的输出结果是A) 7 B) 8 C) 9 D) 10(33) 若要用下面的程序片段使指针变量p指向一个存储整型变量的动态存储单元:int

7、*p;p=_ malloc( sizeof(int);则应填入A) int B) inst * C) (*int) D) (int *)(34) 请读程序片段(字符串内没有空格):printf(%dn,strlen(ATSn0121);上面程序片段的输出结果是A) 11 B) 10 C) 9 D) 8(35) 请读程序:#include#includemain() char*s1=AbCdEf, *s2=aB;s1+; s2+;printf(%dn,strcmp(s1,s2);上面程序的输出结果是A) 正数 B) 负数 C) 零 D) 不确定的值(36) 请读程序:#includefunc(

8、int a, int b) int c;c=a+b;return c;main() int x=6, y=7, z=8, r;r=func( x-,y=,x+y),z-);printf(%dn,r);上面程序的输出结果是A) 11 B) 20 C) 21 D) 31(37) 请读程序:#includeint a=2,4,6,8;main() int i;int *p=a;for(i=0;i4;i+) ai=*p+;printf(%dn,a2);上面程序的输出结果是A) 6 B) 8 C) 4 D) 2(38) 请读程序:#includechar fun(char *c) if( *c=A) *

9、c-=A-a;return *c;main() char s81, *p=s;gets(s);while(*p)*p=fun(p); putchar(*p); p+;putchar(n);若运行时从键盘上输入OPEN THE DOOR(表示回车),则上面程序的输出结果是A) oPEN tHE door B) open the door C) OPEN THE DOOR D) Open The Door(39) 请读程序:#includevoid fun( int *s) static int j=0;dosj+=sj+1;while(+j2);main() int k, a10=1,2,3,4

10、,5;for(k=1; k3; k+) fun(a);for(k=0; k5; k+) printf(%d, ak);上面程序的输出结果是A) 34756 B) 23445 C) 35743 D) 12345(40) 请读程序:#include#define SUB(X,Y) (X)*Ymain() int a=3, b=4;printf(%d, SUB(a+, b+);上面程序的输出结果是A) 12 B) 15 C) 16 D) 20(41) 请读程序:#includemain() int mun=0;while(num=2) num+; printf(%dn,num);上面程序的输出结果是

11、A) 1 B) 1 C) 1 D) 12 2 23 34(42) 请读程序:#includemain() float x,y;scan(%f,&x);if(x0.0) y=0.0else if(x5.0)&(x!=2.0)y=1.0/(x+2.0);else if (x10.0) y=1.0/x;else y=10.0;printf(%fn,y);若运行时从键盘上输入2.0(表示回车),则上面程序的输出结果是A) 0.000000 B) 0.250000 C) 0.500000 D) 1.000000(43) 请读程序:#includemain() int x=1, y=0, a=0, b=0

12、;switch(x) case 1:switch(y) case 0: a+;break;case 1: b+;break;case 2:a+; b+; break;printf(a=%d, b=%dn,a,b);上面程序的输出结果是A) a=2, b=1 B) a=1, b=1 C) a=1, b=0 D) a=2, b=2(44) 若有下面的程序片段:int a12=0, *p3, *pp, i;for(i=0; i3; i+)pi=&ai*4;pp=p;则对数组元素的错误引用是A) pp01 B) a10 C) p31 D) *(*(p+2)+2)(45) 请读程序:#include#i

13、ncludemain() float x,y,z;scan(%f%f,&x,&y);z=x/y;while(1) if(fabs(z)1.0) x=y; y=z; z=x/y;else breakprintf(%fn,y);若运行时从键盘上输入3.6 2.4(表示回车),则输出的结果是A) 1.500000 B) 1.600000 C) 2.000000 D) 2.400000(46) 请读程序:#includef(in b, int n) int i, r;r=1;for(i=0; i=n; i+) r=r*bi;return r;main() int x, a= 2,3,4,5,6,7,8

14、,9;x=f(a, 3);printf(%dn,x);上面程序的输出结果是A) 720 B) 120 C) 24 D) 6(47) 请读程序:#include#includevoid fun( char *s) char a10;strcpy( a, STRING);s=a;main() char *p;fun(p);x=f(a, 3);printf(%sn,p);上面程序的输出结果是(表示空格)A) STRING B) STRINGC) STRING D) 不确定的值(48) 若已建立下面的链表结构,指针p、s分别指向图中所示的结点,则不能将s所指的结点插入到链表末尾的语句组是A) s-ne

15、xt=NULL; p=p-next; p-next=s;B) p=p-next; s-next=p-next; p-next=s;C) p=p-next; s-next=p; p-next=s;D) p=(*p).next; (*s).next=(*p).next; (*p).next=s;(49) 请读程序:#includevoid fun(float *pl, float *p2, float *s) s=( float * )calloc( 1, sizeof(float);*s=*p1+ *(p2+);main() float a2=1.1, 2.2, b2=10.0, 20.0, *

16、s=a;fun(a, b, s)printf(%fn,*s);上面程序的输出结果是A) 11.100000 B) 12.100000 C) 21.100000 D) 1.100000(50) 请读程序:#include#includevoid fun( char *w, int m) char s, *p1, *p2;p1=w; p2=w+m-1;while (p1p2) s=*p1+; *p1=*p2-; *p2=s;main() char a=ABCDEFG;fun( a, strlen(a);puts(a);上面程序的输出结果是A) GFEDCBA B) AGADAGA C) AGAAG

17、AG D) GAGGAGA二、填空题(每空2分,共40分)请将每空的正确答案写在答题卡上【1】-【20】序号后的横线上,答在试卷上不得分。 (5) 设有两个八位二进制数00010101与01000111相加,其结果的十进制表示为 【5】 。(6) 数学式子写成C语言表达式是 【6】 。(7) 下面程序的输出结果是 【7】 。#includemain() static char b=Goodbye;char *chp=&b7;while( -chp =&b0) putchar( *chp);putchar(n);(8) 下面程序的输出结果是 【8】 。#includevoid as( int x

18、, int y, int *cp, int *dp) *cp=x+y;*dp=x-y;main() int a=4, b=3, c, d;as( a, b, &c, &d);printf( %d %dn, c, d);(9) 请读程序:#includemain( int argc, char *argv) int i;printf( %dn, argc);for( i=0; i=argc+1; i+) printf( %s , argvi);printf(n);若上面的程序编译、连接后生成可执行文件ABC.EXE,则输入以下命令行abc file1 file2(表示回车)程序执行后的输出结果是

19、 【9】 。(10) 条件“20x30或x-100”的C语言表达式是 【10】 。(11) 设二进制数a是00101101,若想通过异或运算ab使a的高4位取反,低4位不变,则二进制数b应是 【11】 。(12) 若有以下说明和定义语句,则变量w在内存中所占的字节数是 【12】 。union aa float x, y;char c6;struct st union aa v; float w5; double ave; w;(13) 下面程序的输出结果是 【13】 。#include #define N 5fun( char *s, char a, int n) int j;*s=a; j=

20、n;while( esj) j-;return j;main() char sN+1;int k, p;for( k=1; k=N; k+)sk=A+k+1;printf( %dn, fun(s, E, N);(14) 下面程序的输出结果是 【14】 。#includevoid fun( char *a1, char *a2, int n) int k;for( k=0; kn; k+)a2k=( a1k-A-3+26)%26+A;a2n=0;main() char s15=ABCD, s25;fun( s1, s2, 4);puts( s2);(15) 下面的findmax函数返回数组s中最

21、大元素的下标,数组中元素的个数由t传入,请填空。findmax( int s, int t) int k, p;for( p=0, k=p; psk) 【15】 。return k; (16) 下面程序的输出结果是 【16】 。#include fun( int x) int p;if( x=0|x=1) return(3);p=x-fun( x-2);return p;main() printf( %dn, fun(9);(17) 下面程序的输出结果是 【17】 。#include funa( int a, int b) return a+b;funb( int a, int b) retu

22、rn a-b;sub( int (*t)(), int x, int y) return(*t)( x,y);main() int x, (*p)();p=funa;x=sub(p,9,3);x+=sub(funb, 8, 3);printf(%dn, x);(18) 下面程序的输出结果是 【18】 。#include main() char *p= BOOL, OPK, H, SP;int i;for(i=3; i=0; i-,i-) printf( %c, *pi);printf(n);(19) 为了建立如图所示的存储结构(即每个结点含两个域,data是数据域,next是向结点的指针域),

23、请填空。 datanextstruct link char data; 【19】 node;(20) 下面的程序用来统计文件中字符的个数,请填空。#include main() FILE *fp;long num=0;if( fp=fopen(fname.dat,r)=NULL) printf( Cant open file! n); exit(0);while 【20】 fgetc(fp); num+;printf(num=%dn, num);fclose(fp);完参考答案一选择题(1)(40)题每题1分,(41)(50)题每题2分,共60分)(1)C(2)A(3)B(4)D(5)D(6)

24、A(7)C(8)B(9)D(10)C(11)B(12)D(13)A(14)C(15)B(16)A(17)B(18)A(19)C(20)C(21)D(22)B(23)B(24)A(25)C(26)D(27)D(28)B(29)C(30)A(31)B(32)B(33)D(34)C(35)A(36)C(37)A(38)B(39)C(40)A(41)C(42)C(43)A(44)C(45)B(46)B(47)D(48)C(49)D(50)C二 填空题(每空2分,共40分) (第(2)(3)空允许小写或大小写混合使用,其它空均须与答案一样) (1) 外部(2) DIR ? C*.* (3) A:XYWQ

25、R.C(4) 64(5) 92(6) pow(sin(x),2) * (a+b)/(a-b) 或 sit(x) * sit(x) * (a+b)/(a-b) (7) eybdooG (8) 7 1 (9) 3 abc.exe file1 file2 (注:两个答案,每个1分) (10) (20x)&(x30)|(x-100) 或 20x&x30|x-100 (11) 11110000 (12) 34 (13) 3 (14) XYZA (15) k=p (16) 7 (17) 17 (18) SO (19) struct link *next (20) (!feof(fp)或(feof(fp)=0)

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1