为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

C语言考试试题

2017-09-30 13页 doc 32KB 39阅读

用户头像

is_005190

暂无简介

举报
C语言考试试题C语言考试试题 C语言自学考试模拟试题及答案 一、单项选择题 1.各种基本数据类型的存贮空间正确的长度排列为_____C_____. A.Char12,15:6>7,8:9)的值为____C________ . A 9 B 8 C 15 D. 1 7.若x=5,y=3 则y*=x+5; y的值为___D____________. A. 10 B. 20 C. 15 D. 30 8.C语言的输入与输出操作是由______C______完成的。 A.输入语句 B.输出语句 C.输入与输出函数 D.输入与输出语句...
C语言考试试题 达式y=(13>12,15:6>7,8:9)的值为____C________ . A 9 B 8 C 15 D. 1 7.若x=5,y=3 则y*=x+5; y的值为___D____________. A. 10 B. 20 C. 15 D. 30 8.C语言的输入与输出操作是由______C______完成的。 A.输入语句 B.输出语句 C.输入与输出函数 D.输入与输出语句 9.语句 for(k=0;k<5;++k) { if(k= = 3) continue; printf(“%d”,k); }的输出结果为______B_____. A.012 B. 0124 C. 01234 D. 没有输出结果 10.从循环体内某一层跳出,继续执行循环外的语句是:___A________. A. break语句 B.return语句 C.continue语句 D.空语句。 11.Break语句的正确的用法是______B______. A.无论在任何情况下,都中断程序的执行,退出到系统下一层。 B.在多重循环中,只能退出最靠近的那一层循环语句。 C.跳出多重循环。 D.只能修改控制变量。 12.两个指针变量的值相等时,表明两个指针变量是______B____. A.占据同一内存单元。 B.指向同一内存单元地址或者都为空。 C.是两个空指针。 D.都没有指向。 13.不正确的指针概念是_____D_____. A.一个指针变量只能指向同一类型的变量。 B.一个变量的地址称为该变量的指针。 C.只有同一类型变量的地址才能存放在指向该类型变量的指针变量之中。 D.指针变量可以赋任意整数,但不能赋浮点数。 14.设char ch=‘A’;表达式ch~(ch>=‘A’&&ch<=‘Z’),ch:(ch+32)的值是_________. A.A B. a C. Z D. z 15.根据C语言的语法规则,下列_____A__个是不合法标识符。 A.While B. Name C. Rern5 D. _exam 16.设单精度变量f,g均为5.0,使f为10.0的表达式是________A__. A. f+=g B. f-=g+5 C. f*=g-15 D. f / =g*10 2003年10月甘肃省自考C语言程序设计真题 一、单项选择题(在每小题的四个备选答案中,选出一个正确的答案,并将其代码填入题干后的括号内。每小题1分,共20分) 1.程序中定义以下宏 #define S(a,b) a*b,若定义 int area;且令area=S(3+1,3+4),则变量area的值为(A) A 10 B 12 C 21 D 28 2.正确的标识符是() A a B a=2 Ca.3 D a_3 3.表达式1&3&5&7的值为(A) A 1 B3 C5 D7 4.语句printf(″s\\t″)的输出结果为(B) A s\\t B s\t C s\ D s 5. 执行下列语句中,sum变量的值是(B) int sum=0 for(int i=0;i<10;i++,sum+=i); A 45 B 55 C 0 D编译错误 6.已知有共用体变量data1定义如下: union data { int i; char ch; float f; } data1;则变量data1所占的内存存储空间可表示为(C) Asize of(int) Bsize of(char) Csize of(float) Dsize of(int)+size of(char)+size of(float) 7.若fp是指向某文件的指针,且feof(fp)的返回值是非零值,则表示 () A已读到此文件末尾 B未读到此文件的末尾 C此文件已关闭 D此文件尚未被打开 8.以下c语言函数声明中,不正确的是() Avoid fun (int x, int y); Bfun (int x, int y); Cint fun (int x,y); Dchar *fun (char *s); 9.下列选项中,不合法的C语言关键字是() Aauto Bdefault Cstatic Dvar 10.若x=4,则x*=x+2的值为() A36 B24 C18 D20 11.函数调用语句func((exp1,exp2),(exp3,exp4,exp5));中,实参的个 数为() A1 B2 C4 D5 12.设a为5,执行下列语句后,b的值不为2的是() Ab=a/2 Bb=6-(-a) Cb=a%2 Db=a>32:1 13.假设指针p1已经指向了某个整型变量,要使指针p2也指向同一个变 量,则下面各项中正确的是() Ap2=**p1 Bp2=*&p1 Cp2=*p1 Dp2=&*p1 14.以下运算符中,运算对象必须是整型的是() A/B%=C~=D〈= 15.以下关于typedef的叙述中错误的是() A用typedef可以增加新的类型 B用typedef可以定义各种类型名,但不能用来定义变量 C用typedef只是将已有的类型用新的标识符来代表 D使用typedef有利于程序的通用和移植 16.若执行完成下列语句: int a=3,b=6,c; c=a?b《2; 则变量c的二进制值为() A00011100 B00010100 C0001000 D00011011 17.设有定义int x=1; int y=‘a’<‘A’x-:x++;,则变量y的值是 () A0 B2 C1 D3 18.以下关于宏替换的叙述不正确的是() A宏替换只是字符替换 B宏名无类型 C宏替换不占用运行时间 D宏替换不占用编译时间 19. 以下对枚举类型名的定义中正确的是() Aenum s={a,b,c} Benum s {a=9,b=2,c} Cenum s={′a′, ′b′, ′c′} Denum s{′a′, ′b′, ′c′} 20. 假设指针p已经指向某个整型变量x,则*p相当于() A&x B&p Cx D*x 1(A 2(D 3(A 4( B 5(B 6(C 7(A 8(C 9(D 10(B 11(B 12(C 13(D 14(B 15(A 16.D 17(C 18. D 19. B 20. C 二、多项选择题(在每小题的五个备选答案中,选出二至五个正确答案,并将其代码填 写在题干后的括号内;错选、多选不得分。每小题2分,共10分) 1. C语言中的文件类型有() A索引文件 B文本文件CASCII文件 D二进制文件E随机文件 2. 以下关于C语言中循环的描述正确的是() A在while和do-while循环体内应包含使循环趋于结束的语句 Bdo-while的循环体不能是复合语句 Cdo-while的循环体至少无条件执行一次 D在for循环中可以使用break语句跳出循环体 Efor循环只能用于循环次数已经确定的情况 3. 合法的变量名有() Aa_1_2 Bb2 C_abc DABC E$1 4. 整型变量的类型标识符是() Ashort Blong CUnsigned int Dint Echar 5. 以下叙述中正确的是() A一个C语言程序有且仅有一个main函数 BC语言程序中,main函数是没有参数的 C一个函数通过其他函数间接的调用了自身,这种情况也是一种递归 调用 Dmain函数是由系统调用的 E若要通过函数参数带回一个或多个返回值,则应使用按地址传送的参数结合方式 三、判断题(认为对的,在题后的括号内打″?″,认 为错的打″×″。每小题1分,共6分) 1.若有说明int c;则while (c=getchar());是错误的C语句。() 2.C语言中,共用体类型的变量在程序运行期间,所有成员都在内存中。() 3.在一个函数内部的复合语句中定义的变量,只在该复合语句范围内有效。() 4.C语言程序中,一个文件中的函数可以引用存储在另一个文件中的函数和变量。() 5.使用continue和break语句,都可以使得C程序的执行直接从循环中跳出。() 6.若a为一维数组名,则*(a+i)与a[i]等价。() 四、阅读程序,将程序运行结果填写到题后的横线上(每小题5分,共25分) 1( #include ″stdio.h″ main() { static char str[]=″Language″; char *s=&str[8]; while (--s>=&str[0]) putchar (*s); putchar(′\n′); } 输出结果:___________________________ 2( main( ) { int a[6]={12,4,17,24,27,16}; int b[6]={27,13,4,25,23,16}; for (int i=0;i<6;i++) { for (int j=0;j<6;j++) if (a[i]==b[j]) break; if (j<6) printf(″%d″,a[i]) } } 输出结果:_____________________________ 3. #include int mian( ) { int i=0,sum=0; while (1) { sum+=i; i++; if (i>5) break; } printf (″sum=%d\n″,sum); } 程序运行结果: 4. int fun(int n) { if (n>0) return n*fun(n-1); else return 1; } main() { int a=fun(4); printf(″a=%d\n″,a); } 程序运行结果:____________________ 5. fun (int i) { static int s=3; s+=i return (s);} main() { int a=2,b=1,s; s=fun(a); s=fun(b); printf(″%d\n″,s);} 程序运行结果:____________________ 五、程序填空题(根据题意要求,将程序补充完成。每 空2分,共22分) 1(以下程序输入整数a,b的值,然后交换a,b的值,并输出交换后的结果。 Vodi swap(?_________________) { int t; t=*a; ?__________________ ?__________________ } main() { int a,b; scanf(″%d,%d″,&a,&b); ?_____________________ printf(″a=%d,b=%d″,a,b); } 2(以下程序的功能是:从键盘输入一串字符(以回车换行符结束),统计 其中小写英文字母的个数,将结果保存在变量count中。 main() { int ?__________________; char c; ?______________________ while (c!=′\n′) { if (?______________________) ?______________________; c=getchar(); } printf(″have typed %d lower letters″,count); } 3. 下面程序的功能是用函数递归方法计算菲波那契数列,请填空完善之。 main() { int n,m; scanf(″%d″,&n); m=?__________________; printf(″%d″,m); } int fibo(n); int n; { if(n==1) ?___________________; else if(n==2) return(1); else return (?_________________); } 六、编程题(第1小题8分,第2小题9分,共17分) 1(求出10至1000之内能同时被2、3、7整除的数,并输出。 2(输出整数n,求表达式 的值。要求,程序中求2x的功能部分必须在一函数中完成,函数名使 用expt。 试题参考答案及评分 一(单项选择题(每小题1分,共20分) 1(A 2(D 3(A 4( B 5(B 6(C 7(A 8(C 9(D 10(B 11(B 12(C 13(D 14(B 15(A 16.D 17(C 18. D 19. B 20. C 二(多项选择题(错选、多选不得分。每小题2分,共10分) 1(B C D 2(A C D 3(A B C D 4(A B C D 5(A C D E 三(判断题(每小题1分,共6分) 1(× 2(× 3(? 4(? 5(× 6(? 四、阅读程序,将程序运行结果填写到题后的横线上(每小题5分,共25分) 1. egaugnal 2. 4 27 16 3. 15 4. 24 5. 6 五(程序填空题(每空2分,共22分) 1(? int *a, int *b ? *a=*b; ? *b=t; ? swap(&a,&b); 2. ? count=0 ? c=getchar(); (或scanf″%c″,&c);) ? c>=′a′&&c<=′z′ ? count++; 3. ? fibo(n) ?return(o) ?fibo(n-2)+fibo(n-1) 六(编程题(第1小题7分,第2小题8分,共15分) 1. main() { int i; for (i=10; i<=1000; i++) if (i%2==0&& i%3==0&& i%7==0) printf(″%5d″,i); } 2. #include float expt(int n) { float r=1; if (n>0) for(int i=0; i
/
本文档为【C语言考试试题】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索