大学C语言考试题库(答案)

上传人:1****1 文档编号:59389421 上传时间:2022-03-02 格式:DOC 页数:44 大小:134KB
收藏 版权申诉 举报 下载
大学C语言考试题库(答案)_第1页
第1页 / 共44页
大学C语言考试题库(答案)_第2页
第2页 / 共44页
大学C语言考试题库(答案)_第3页
第3页 / 共44页
资源描述:

《大学C语言考试题库(答案)》由会员分享,可在线阅读,更多相关《大学C语言考试题库(答案)(44页珍藏版)》请在装配图网上搜索。

1、.单项选择=题号:1482执行以下程序段后,输出结果和a的值是()。 int a=10; printf(”d,a+);A、11 和 10B、11 和 11C、10 和 11D、10 和 10答案:C题号:2100已知字符A的ASC代码值是65,字符变量c1的值是A,c2的值是D.执行语句printf(”%d,%d”,c1,c22);后,输出结果是A、65,66B、A,BC、65,68D、A,68答案:A题号:5055相同结构体类型的变量之间,可以()。A、比较大小B、地址相同C、赋值D、相加答案:C题号:3217int a10;合法的数组元素的最小下标值为()。A、1B、0C、10D、9答案:

2、B题号:45能正确表示逻辑关系: a10或a0 ”的C语言表达式是A、a=0 | a=10B、a=10 or a=10 & a=0D、a=10 | a=0答案:D题号:157main()int x=1,a=0,b=0;switch (x) case 0: b+; case 1: a+; case 2: a+;b+; printf(a=%d,b=d,a,b);该程序的输出结果是( )A、2,2B、2,1C、1,1D、1,0答案:B题号:4784设变量a是整型,f是实型,i是双精度型,则表达式10+a+if值的数据类型为().A、不确定B、doubleC、intD、float答案:B题号:1647

3、 以下程序中,while循环的循环次数是_main() int i=0; while(i10) if(i1) continue; if(i=5) break; i+; A、死循环,不能确定次数B、6C、4D、1答案:A题号:191若有说明语句:char c=72;则变量c().A、说明不合法,c的值不确定B、包含3个字符C、包含1个字符D、包含2个字符答案:C题号:1300下列程序运行结果为:define P 3#define S(a) Pa*amain() int ar; ar=S(3+5); printf(”n%d”,ar); A、192B、25C、29D、27答案:C判断=题号:6755

4、若i =3,则printf(d”,-i+);输出的值为 -4。答案:错误题号:6167表达式 (j=3, j+) 的值是4。答案:错误题号:1495C语言中只能逐个引用数组元素而不能一次引用整个数组.答案:正确题号:2921参加位运算的数据可以是任何类型的数据.答案:错误题号:2691若有 int i=10,j=2;则执行完i*=j+8;后的值为28。答案:错误题号:464若 a=3,b=2,c=1 则关系表达式”(ab)=c” 的值为”真。答案:正确题号:66若有 define S(a,b) a*b 则语句 area=S(3,2); area的值为6.答案:正确题号:758若有宏定义:#de

5、fine S(a,b) t=a;a=b;b=t由于变量t没定义,所以此宏定义是错误的.答案:错误题号:2158#define 和printf 都不是C语句。答案:正确题号:5102关系运算符= 与 = 的优先级相同.答案:错误填空=题号:1076表达式3.5 + 1 / 2的计算结果是_。答案:空 1:3.5题号:551请写出以下程序的输出结果_。main() int a = 100;if( a 100) printf(“dn, a 100);else printf(“dn, a = 100); 答案:空 1:1题号:3255表达式(int)((double)(5/2)+2.5)的值是_。答案

6、:空 1:4题号:2472阅读下面程序,程序执行后的输出结果为_。include ”stdio。h”main()char a,b;for(a=0,b=9;ab;a+,b-) printf(cc”,a,b);printf(”n);答案:空 1:0918273645题号:937以下程序段的输出结果是_。int i = 0, sum = 1; do sum += i+; while( i 5); printf(“%dn”, sum);答案:空 1:11题号:5213以下程序段的输出结果是_、_、_、_、_。 int x = 0177; printf(“x = 3d, x = 6d, x = 6o,

7、x = %6x, x = 6un, x, x, x, x, x);答案:空 1:x = 127空 2:x = 127空 3:x = 177空 4:x = 7f空 5:x = 127题号:3210以下程序的输出结果是_。main() int a = 3, b = 2, c = 1; c -= +b; b = a + c; int b = 5, c = 12; c /= b * 2; a = c; printf(“%d, %d, %d, ”, a, b, c );a += -c;printf(“d, d, %dn”, a, b, c);答案:空 1:2,5,1,2,3,-2题号:4474当计算机用

8、两个字节存放一个整数时,其中能存放的最大十进制整数是_、最小十进制整数是_,它们的二进制形式是_。答案:空 1:65535空 2:-32768空 3:1111 1111 1111 1111,1000 0000 0000 0000题号:2791结构化程序由_、_、_三种基本结构组成。答案:空 1:顺序空 2:条件分支 【或】 选择空 3:循环题号:561阅读下面程序,程序执行后的输出结果是_。#include stdio。h”main() int x,y,z; x = 1; y = 2; z = 3; if(xy)if(xz)printf(”d”,x);else printf(”%d”,y);p

9、rintf(”dn,z);答案:空 1:3程序设计=题号:2660/-【程序设计】-功能:计算出k以内最大的10个能被13或17整除的自然数之 和。(k3000)。-*/include #includeconio.h”void bky(); int fun(int k) /*Begin*/ /* End */main() int m; printf(”Enter m: ”); scanf(”d, &m); printf(nThe result is dn, fun(m)); bky(); void bky() FILE *IN,*OUT; int s ; int t; int o; IN=fo

10、pen(”in.dat,”r”); if(IN=NULL) printf(”Read FILE Error”); OUT=fopen(out.dat”,w); if(OUT=NULL) printf(Write FILE Error”); for(s=1;s=2)&(b 100) printf(“dn”, a 100);else printf(“dn”, a 题号:4063以下程序段的输出结果是_、_、_、_ double a = 513.789215; printf(“a = 8。6f, a = %8.2f, a = %14。8f, a = %14.8lfn”, a, a, a, a);答案

11、:空 1:a = 513.789215空 2:a = 513.79空 3:a = 513。78921500空 4:a = 513。78921500题号:5076以下程序的输出结果是_。main() int a=0;a+=(a=8);printf(dn,a); 答案:空 1:16题号:5410以下程序的执行结果是_。main() int a, b, p = a, *q = b; a = 10; b = 20; p = b; q = a; printf(“a = d, b = %dn”, a, b); 答案:空 1: a = 20, b = 20 题号:6975以下程序的输出结果是_。main()

12、 int x = 2;while ( x- );printf(“dn”, x); 答案:空 1:-1程序设计=题号:58/*-【程序设计】-功能:将字符串中的小写字母转换为对应的大写字母, 其它字符不变。-*/#include string。hinclude stdio。hvoid bky(); void change(char str) /*Begin*/ /* End */main() void change(); char str40; gets(str); change(str); puts(str); bky();void bky() FILE *IN,OUT; char i200;

13、 IN=fopen(”in。dat”,r); if(IN=NULL) printf(Read FILE Error); OUT=fopen(out.dat”,”w); if(OUT=NULL) printf(”Write FILE Error”); fscanf(IN,s,i); change(i); fprintf(OUT,”sn”,i); fclose(IN); fclose(OUT);示例代码:int i; for(i=0;stri!=0;i+) if(stri=a & stri=z) stri=stri32;题号:45能正确表示逻辑关系:” a10或a0 ”的C语言表达式是A、a=0

14、a=10B、a=10 or a=0C、a=10 a=0D、a=10 | a=0答案:D题号:53若已定义x为int类型变量,下列语句中说明指针变量p的正确语句是()。A、int *p=x;B、int p=x;C、p=*x;D、int p=x;答案:A题号:2244字符串指针变量中存入的是A、第一个字符B、字符串C、字符串的首地址D、字符串变量答案:C题号:3722下列字符数组长度为5的是A、char c10= h, a, b, c, d;B、char b= h, a, b, c, d, 0;C、char a=h, a, b, c, d;D、char d6= h, a, b, c, 0 ;答案:

15、C题号:2703从键盘上输入某字符串时,不可使用的函数是().A、getchar()B、scanf()C、fread()D、gets()答案:A题号:3402以下对整型数组a的正确说明是:A、int n = 10, an;B、C、D、int a(10);答案:C题号:130若char a10;已正确定义,以下语句中不能从键盘上给a数组的所有元素输入值的语句是().A、scanf(”s”,a);B、for(i=0;i10;i+)ai=getchar();C、a=getchar();D、gets(a);答案:C题号:191若有说明语句:char c=72;则变量c()。A、说明不合法,c的值不确定

16、B、包含3个字符C、包含1个字符D、包含2个字符答案:C题号:4539以下程序的输出结果是main() int i = 1, j = 3;printf(“%d,”, i+); int i = 0; i += j * 2; printf(“%d,d,”, i, j );pritnf(“d,%dn”, i, j ); A、1,6,3,2,3B、2,7,3,2,3C、1,7,3,2,3D、2,6,3,2,3答案:A题号:300以下对一维整型数组a的正确说明是()。A、define SIZE 10 (换行) int aSIZE;B、int a(10);C、int n; scanf(”%d,&n); i

17、nt an;D、int n=10,an;答案:A判断=题号:2691若有 int i=10,j=2;则执行完i=j+8;后的值为28。答案:错误题号:2067如果想使一个数组中全部元素的值为0,可以写成 int a10=0*10;答案:错误题号:1118函数调用语句:func(rec1,rec2+rec3,(rec4,rec5);中,含有的实参个数是5.答案:错误题号:1534C语言所有函数都是外部函数。答案:错误题号:2158#define 和printf 都不是C语句。答案:正确题号:6321循环结构中的continue语句是使整个循环终止执行答案:错误题号:2583在程序中定义了一个结构

18、体类型后,可以多次用它来定义具有该类型的变量。答案:正确题号:3386若有int =10, j=0;则执行完语句if (j=0)+ +; else - -; 的值为11。答案:错误题号:2998c程序总是从程序的第一条语句开始执行.答案:错误题号:5034语句scanf(”%7.2f,&a);是一个合法的scanf函数.答案:错误填空=题号:582以下程序的执行结果是_。main() int k=8; switch(k) case 9: k+=1;case 10: k+=1;case 11: k+=1; break;default: k+=1;printf(%dn,k);答案:空 1:9题号:

19、5171把a1、a2定义成单精度实型变量,并赋初值1的说明语句是_。答案:空 1:float a1 = 1。0, a2 = 1。0;题号:63以下程序的输出结果是_。#define PR(ar) printf(“ar = %d “, ar)main() int j, a = 1, 3, 5, 7, 9, 11, 13, 15, *p = a + 5; for(j = 3; j ; j-) switch( j ) case 1: case 2: PR(*p+); break; case 3: PR(*(p) ); 答案:空 1:ar=9 ar=9 ar=11题号:3255表达式(int)(dou

20、ble)(5/2)+2。5)的值是_。答案:空 1:4题号:1076表达式3。5 + 1 / 2的计算结果是_。答案:空 1:3.5题号:6547当a = 1、b = 2、c = 3时,以下if语句执行后,a、b、c中的值分别为:_、_、_ if(a c) b = a; a = c; c = b;答案:空 1:3空 2:2空 3:2题号:3925阅读下面程序,则执行后程序的结果为_。include stdio。h”main()int a=0,b=0;while(a15)a+;while(b+15);printf(d,%dn,a,b);答案:空 1:15, 16题号:4473有以下程序段:s =

21、 1.0; for(k = 1; k = n; k+) s = s + 1。0 / (k * (k + 1); printf(“fn”, s);请填空,使下面的程序段的功能完全与之等同. s = 0。0;_; k = 0; do s += d; _;d = 1.0 / (k (k + 1)); while(_ ); printf(“fn”, s);答案:空 1:d = 1.0空 2:k+空 3:k = n题号:6975以下程序的输出结果是_。main() int x = 2;while ( x- );printf(“dn”, x); 答案:空 1:1题号:4423下列程序的功能是输入一个整数,

22、判断其是否是素数,若为素数输出1,否则输出0.请填空。main() int i, x, y=1;scanf(%d, x);for(i=2; i= _; i+)if_ y=0; break;printf(”%dn, y);答案:空 1:x / 2空 2:!(x i) 【或】 x i = 0程序设计=题号:788/-【程序设计】-题目:用while语句求1100的累计和。-*/void bky(); int fun(int n) /*Begin*/ /* End */void main() int sum = 0; sum=fun(100); printf (sum = dn”, sum); bk

23、y();void bky() FILE *IN,OUT; int i; int iIN,iOUT; IN=fopen(”in。dat”,r”); if(IN=NULL) printf(”Please Verify The Currernt Dir。.it May Be Changed”); OUT=fopen(”out。dat,”w); if(OUT=NULL) printf(Please Verify The Current Dir。. it May Be Changed); for(i=0;i5;i+) fscanf(IN,”%d,iIN); iOUT=fun(iIN); fprintf(

24、OUT,”%dn,iOUT); fclose(IN); fclose(OUT);示例代码: int i=1,sum=0; while(ib)=c” 的值为”真。答案:正确填空=题号:2713以下程序段的输出结果是_.printf(“%dn, strlen(“sn0160end);答案:空 1:3题号:2758若x为double型变量,请写出运算x = 3.2, +x后表达式的值_和变量的值_。答案:空 1:4。2空 2:4。2题号:3121若有定义:int a=8,b=5,c 执行语句c=a/b+0。4后,c的值为_答案:空 1:1题号:4474当计算机用两个字节存放一个整数时,其中能存放的最

25、大十进制整数是_、最小十进制整数是_,它们的二进制形式是_.答案:空 1:65535空 2:32768空 3:1111 1111 1111 1111,1000 0000 0000 0000题号:4683若从键盘输入58,则以下程序输出的结果是_。main() int a;scanf%d”,a);if(a50)printf(%d,a);if(a40)printf(”d,a);if(a30)printf(”d”,a);答案:空 1:585858题号:1262请写出与以下表达式等价的表达式是 A)_B)_。A)!(x0) B)!0答案:空 1:x = 0空 2:1题号:5076以下程序的输出结果是_

26、。main() int a=0;a+=(a=8);printf(dn”,a); 答案:空 1:16题号:5410以下程序的执行结果是_。main() int a, b, *p = &a, q = b; a = 10; b = 20; p = b; *q = a; printf(“a = d, b = %dn, a, b); 答案:空 1: a = 20, b = 20 题号:5299运用位运算,能将八进制数0125000除以4,然后赋给变量a的表达式是_。答案:空 1:a = 01250002题号:2211在C语言程序中,用关键字_定义基本整型变量,用关键字_定义单精度实型变量,用关键字_定义

27、双精度实型变量。答案:空 1:int空 2:float空 3:double程序设计=题号:4003/-【程序设计】-功能:求一个四位数的各位数字的立方和-/#include stdio。hvoid VV();int fun(int n) /* Begin */ /* End */main() int k; k=fun(1234); printf(k=%dn,k); VV();void VV() FILE *IN,*OUT; int iIN,iOUT,i; IN=fopen(”22.IN”,”r”); if(IN=NULL) printf(Please Verify The Currernt D

28、ir。it May Be Changed”); OUT=fopen(22。out”,”w); if(OUT=NULL) printf(Please Verify The Current Dir. it May Be Changed); for(i=0;i10;i+) fscanf(IN,%d,iIN); iOUT=fun(iIN); fprintf(OUT,%dn,iOUT); fclose(IN); fclose(OUT);示例代码:int d,k,s=0;while (n0) d=n%10; s+=d*d*d; n/=10;return s;题号:6991以下程序的执行结果是_。 main

29、() int w = 1, x = 2, y = 3, z = 4; w =( w x ) ? x : w; w =( w y ) ? y : w; w =( w z ) ? z : w; printf( %d ” , w );A、2B、4C、3D、1答案:B题号:5467若有说明:int n=2,*p=&n,q=p;,则以下非法的赋值语句是().A、n=*q;B、p=q;C、p=n;D、p=*q;答案:C题号:5820以下程序的输出结果是void prtv(int x) printf(“%dn”, +*x); main() int a = 25; prtv(a);A、24B、26C、23D、

30、25答案:B题号:6988以下程序的输出结果是main() int a = 2, b =5; printf(“a=%d,b=%dn”,a, b); A、a=2,b=%5B、a=%d,b=dC、a=d,b=dD、a=2,b=5答案:C题号:6976语句printf(”abrehiyboun);的输出结果是(说明:b是退格符)()。A、abrehiybouB、rehiyouC、abrehiybouD、abrehiybou答案:B题号:166以下关于运算符优先顺序的描述中正确的是().A、关系运算符算术运算符赋值运算符逻辑运算符B、赋值运算符逻辑运算符关系运算符算术运算符C、算术运算符关系运算符赋值

31、运算符逻辑运算符D、逻辑运算符关系运算符算术运算符赋值运算符答案:B题号:333下列语句的结果是().main() int j; j=3;printf(%d,+j); printf(d,j+);A、3,4B、4,4C、4,3D、3,3答案:B题号:457设a和b均为double型变量,且a=5.5、b=2.5,则表达式(int)a+b/b的值是A、6。000000B、5。500000C、6D、6。500000答案:A题号:523若有定义:int a=7;float x=2.5,y=4.7;则表达式x+a%3*(int)(x+y)2/4的值是()。A、3。500000B、0。000000C、2。

32、750000D、2.500000答案:D题号:855若有以下程序段:int a=3,b=4; a=ab;b=ba;a=ab;则执行以上语句后,a和b的值分别是()。A、a=4,b=4B、a=3,b=3C、a=3,b=4D、a=4,b=3答案:D判断=题号:1325若有说明int c;则while(c=getchar());是正确的C语句.答案:正确题号:478C语言中”%”运算符的运算对象必须是整型.答案:正确题号:2998c程序总是从程序的第一条语句开始执行。答案:错误题号:3246假设有int a10, *p;则p=&a0与p=a等价答案:正确题号:2158#define 和printf

33、都不是C语句。答案:正确题号:1498C语言本身不提供输入输出语句,输入和输出操作是由函数来实现的.答案:正确题号:6288十进制数15的二进制数是1111。答案:正确题号:5263x=y+8 等价于 x=x*(y+8)。答案:正确题号:2691若有 int i=10,j=2;则执行完i*=j+8;后的值为28.答案:错误题号:5102关系运算符= 与 = 的优先级相同。答案:错误填空=题号:937以下程序段的输出结果是_。int i = 0, sum = 1; do sum += i+; while( i 5); printf(“%dn, sum);答案:空 1:11题号:1076表达式3。

34、5 + 1 / 2的计算结果是_。答案:空 1:3.5题号:1797以下程序段,要求通过scanf语句给变量赋值,然后输出变量的值.写出运行时给k输入100,给a输入25.81,给x输入1.89234时的三种可能的输入形式_、_、_. int k; flaot a; double x; scanf(“%dflf”, k, &a, x); printf(“k = %d, a = f, x = %fn”, k, a, x);答案:空 1:100 25。81 1.8923空 2:100 25.81 1.8923 空 3:100 25.81 1.8923题号:2472阅读下面程序,程序执行后的输出结果为_.#include ”stdio。h”

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


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