在c语言中保留字是有专门含义和作用的,C语言试题与答案

《C语言试题与答案》由会员分享,可在线阅读,更多相关《C语言试题与答案(27页珍藏版)》请在人人文库网上搜索。

1、大学C语言考试题库第1章 C语言概述习题1. 单项选择题 (1)C 语言是在 B 语言的基础上产生的。 A. A B. B C. D D. E (2)在 C 语言中,每个语句必须以 D 结束。 A. 回车符 B. 冒号 C. 逗号 D. 分号 (3)标识符和关键字间,要用 C 隔开。 A. 回车符 B. 冒号 C. 空格 D. 分号 (4)用 C 语言编写的源文件经过编译,若没有产生编译错误,则系统将( B )。 A. 生成可执行目标文件 B. 生成目标文件 C. 输出运行结果 D.自动保存源文件 (5)下列说法中正确的是( B )。 A. 由于 C 源程序是高级语言程序,因此一定要在 TC 。

2、软件中输入 B. 由 C 源程序是字符流组成,因此可以作为文本文件在任何文本编辑的软件中输入 C. 由于C 程序是高级语言程序,因此输入后即可执行 D. 由于 C 程序是高级语言程序,因此它由命令组成 (6)下列说法中正确的是( A )。 A. C 语言程序由主函数和 0 个或多个函数组成 B. C 语言程序由主程序和子程序组成 C. C 语言程序由子程序组成 D. C 语言程序由过程组成 (7)下列说法中错误的是( D )。 A. 主函数可以分为两个部分:主函数说明部分和主函数体 B. 主函数可以调用任何非主函数的其他函数 C. 任何非主函数可以调用其他任何非主函数 D. 程序可以从任何非主。

3、函数开始执行 2. 填空题 (1)C 语言只有 32 个关键字和 9 种控制语句。 (2)C 语言是一种“ 中级语言 ”,既具有 高级语言 的特点又具有 低级语言 的特点;既适合于开发系统软件又适合于编写应用程序。 (3)每个源程序有且只有一个 主 函数,系统总是从该函数开始执行C语言程序。 (4)在 C 语言程序中允许出现的字符集是 ASCII码字符集 。 (5) C 语言的程序中有特殊含义的英语单词称为 保留字 。 (6) C 语言标识符的长度是前 8 位有效。(7)C 语言中,标识符的定义规则是 以字母或下划线为开头 。 (8)C 语言程序的注释可以出现在程序中的任何地方,它总是以 /*。

4、 符号作为开始标记,以 */ 符号作为结束标记。第2章 数据类型运算符和表达式习题1. 单项选择题 (1)以下选项中,正确的 C 语言整型常量是 D 。 A. 32L B. 510000 C. -1.00 D. 567 (2)以下选项中, D 是不正确的 C 语言字符型常量。 A. a B. x41 C. 101 D. a (3)在 C 语言中,字符型数据在计算机内存中,以字符的 C 形式存储。 A. 原码 B. 反码 C. ASCII 码 D. BCD码 (4)字符串的结束标志是 C 。 A. 0 B. 0 C. 0 D. 0 (5)算术运算符、赋值运算符和关系运算符的运算优先级按从高到低依。

5、次为 B 。 A. 算术运算、赋值运算、关系运算 B. 算术运算、关系运算、赋值运算 C. 关系运算、赋值运算、算术运算 D. 关系运算、算术运算、赋值运算 (6)逻辑运算符中,运算优先级按从高到低依次为 D 。 A. &,!,| B. |,&,! C. &,|,! D. !,&,| (7)表达式!x|a=b 等效于 D 。 A. !(x|a)=b) B. !(x|y)=b C. !(x|(a=b) D. (!x)|(a=b) (8)设整型变量 m,n,a,b,c,d 均为1,执行 (m=ab)&(n=cd)后, m,n 的值是 A 。 A. 0,0 B. 0,1 C. 1,0 D. 1,1 。

6、(9)int b=0,x=1;执行语句 if(x+) b=x+1; 后,x,b 的值依次为 A 。 A. 2,3 B. 2,0 C. 3,0 D. 3,2 (10) 设有语句 int a=3;,则执行了语句 a+=a-=a*=a; 后,变量 a 的值是 B 。 A. 3 B. 0 C. 9 D. -12 (11)在以下一组运算符中,优先级最低的运算符是 D 。 A. * B. != C. + D. = (12)设整型变量 i 值为2,表达式(+i)+(+i)+(+i)的结果是 B 。 A. 6 B. 12 C. 15 D. 表达式出错 (13)若已定义 x 和 y为double 类型,则表达式。

7、 x=1,y=x+3/2 的值是 C 。 A. 1 B. 2 C. 2.0 D. 2.5 (14)sizeof (double)的结果值是 A 。 A. 8 B. 4 C. 2 D. 出错 (15)设a=1,b=2,c=3,d=4,则表达式:a10 & a=15) (17)设 f是实型变量,下列表达式中不是逗号表达式的是 D 。 A. f= 3.2, 1.0 B. f0, f0 D. f=(3.2, 1.0) (18)设ch是 char型变量,其值为 A,则下面表达式的值是 B 。 ch=(ch=A& ch D. * (22) PC 机中,n在内存占用的字节数是 A 。 A. 1 B. 2 C。

8、. 3 D. 4 (23)字符串ABC在内存占用的字节数是 B 。 A. 3 B. 4 C. 6 D. 8 (24)要为字符型变量 a赋初值,下列语句中哪一个是正确的 B 。 A. char a=3; B. char a=3; C. char a=%; D. char a=*; (25)下列不正确的转义字符是 C 。 A. B. C. 074 D. 0 2. 填空题(1) C 语言中的逻辑值“真”是用 非0 表示的,逻辑值“假”是用 0 表示的。 (2) 符号常量的定义方法是 #define N 10 。 (3) 无符号基本整型的数据类型符为 unsigned int ,双精度实型数据类型符为。

9、 double ,字符型数据类型符为 char 。(4) 设 c=w,a=1,b=2,d=-5, 则表达式 x+1c, y!=c+2, -a-5*b B. A C. A D. 以上都不对 (4)若一个 int 类型的数据占 2 字节,则程序段:int x=-1;printf(%u,%d,x,x);的输出结果是 A 。 A. 65535, -1 B. -1,65535 C. 32767, 32768 D. 32768,32767 (5)在 TC 中,getchar、putchar、printf、scanf 四个函数,均包含在头文件 B 中。 A. math.h B. stdio.h C. stb。

10、io.h D. stdlib.h (6)复合语句是用 C 括起来的语句组。 A. ( ) B. C. D. (7)下列格式符中,哪一个可以用于以八进制形式输出整数 C 。 A. %d B. %8d C. %o D. %ld (8)下列格式符中,哪一个可以用于以十六进制形式输出整数 B 。 A. %16d B. %8x C. %d16 D. %d (9) a 是int类型变量,c是字符变量,下列输入语句中哪一个是错误的 B 。 A. scanf(%d,%c,&a,&c); B. scanf(%d%c,a,c); C. scanf(%d%c,&a,&c); D. scanf(d=%d,c=%c,&。

11、a,&c); (10)要使double x; long a;的数据能正确的输出,输出语句应是 D 。 A. printf(%d, %f,a, x); B. printf(%d, %1f,a, x);C. scanf(%1d, %1f,&a, &x); D. printf(%1d, %lf,a, x);2. 程序改错题(以下各个程序段均有 5 个错误,请先找出错误的位置,然后再改正) (1)以下程序的功能是,从键盘输入一个字符并鸣笛输出。 #include stdio.h mian() /main() char c /char c;getchar(c);/c = getchar(); putch。

12、ar(007) ; /*鸣笛*/ c=putchar(); /putchar(c);/(2)以下程序的功能是,输入长方形的两边长(边长可以取整数和实数),输出它的面积和周长。 main /main() int a,b,s,l; /double a,b,s,l;scanf(%d,%d,&a,&b); /scanf(%lf,%lf,&a,&b);s=a*b; l=a+b; /l=(a+b)*2;printf(l=%f,s=%fn,l); /printf(l=%lf,s=%lfn,l,s); 3. 写出程序运行结果(1)main() int a,b; scanf(%2d%*2s%2d,&a,&b);。

13、 printf(%dn,a+b); 运行时输入:12345678 /输出:68(2)main() int a=3,b=5,x,y; x=a+1,b+6; y=(a+1,b+6); printf(x=%dny=%dn,x,y); 输出:x=4y=11第4章 选择结构程序设计习题1. 单项选择题 (1) 选择结构程序设计的特点是___B____。A. 自上向下逐个执行 B. 根据判断条件,选择其中一个分支执行 C. 反复执行某些程序代码 D. 以上都是 (2) 假定所有变量均已正确定义,下列程序段运行后x 的值是__B_。 a=b=c=0,x=35; if(!a) x-; else if(b); 。

14、if(c) x=3; else x=4; A. 34 B. 4 C. 35 D. 3 (3) 下面的程序片段所表示的数学函数关系是_ A____。 if(x0) y=1; else y=0; (4) 下列各语句序列中,能够且仅输出整型变量a、b 中最大值的是( C )。 A. if(ab) printf(%dn,a); printf(%dn,b);B. printf(%dn,b); if(ab) printf(%dn,a);C. if(ab) printf(%dn,a); else printf(%dn,b);D. if(a0) y=1;else if(x=0) y=0;else y= 1;p。

15、rintf(%d,y);A. 1 B. 5 C. 0 D. 2 (6)程序段int x=5,y=8,max; max=(xy)?x:y; printf(%d,max);的输出结果是 B 。 A. 5 B. 8 C. 3 D. 13 (7)程序段 int x=3,a=1;switch(x) case 4: a+;case 3: a+;case 2: a+;case 1: a+; printf (%d,a);的输出结果是 D 。 A. 1 B. 2 C. 3 D. 4 (8) 下列语句应将小写字母转换为大写字母,其中正确的是( B )。 A.if(ch=a&ch=a&ch=a&cha&ch voi。

16、d main( ) int n,i; float no1,nmax,nmin; scanf(%d,&n); scanf(%f,&no1);nmax=no1; nmin=no1 ; for(i=2;inmax) nmax=no1; if(no1 void main( ) char ch; int s1=0,s2=0 ; while( ch=getchar() )!=n) if(ch=0&ch=a&ch=A|ch0; y-) if(y%3=0) printf(%d, -y); continue; 输出:852(2)main() int k,n,m; n=10;m=1;k=1; while(k+0)。

17、; 输出:i=3 i=1 i=-1(4)#include void main( ) int k=0; char c=A; do switch(c+) case A: k+; break; case B: k-; case C: k+=2; break; case D: k=k%2; break; case E: k=k*10; break; default: k=k/3; k+; while(c void main( ) int s=1,t=1,a,n; int i; scanf(%d,%d,&a,&n); for(i=1;i= 200) /i+;if(i%7=0) /if(i%7!=0)br。

18、eak; /continue;printf(%5d,i); n=n+1; if(n=5)/*满5个换行*/ /if(n = 5) printf(n); n=0; (2) 以下程序是求 1!+2!+3!+4!+5!+6!+7!的值,其中有 3 处错误。 main() int i,s,t=0; /long s = 0,t = 1;/int i;for(i=1;i void main() float a7=2,6,3,8,3,12,9; int i;void sort(float*,int); sort(a,7) ; for(i=0;i void find(float *p, float *max,。

19、 float *min, int n) int k; float t; *max=*p; *min = *p; for(k=1;k*max ) *max=t; if(tb) f=1; else if(a=b) f=0; else f=-1; return f; 输出:-1(2)键盘输入 abcdef #include void fun( ) char c ; if(c=getchar( )!=n) fun( ) ; putchar(c); void main( ) fun( ); 输出:fedcba(3) #include #define C 5 int x=1,y=C; void main(。

20、 ) int x; x=y+; printf(%d %dn, x,y); if(x4) int x ; x=+y; printf(%d %dn,x,y) ; x+=y-; printf(%d %dn,x,y); (4) #include int c , a=4 ; func(int a , int b) c=a*b ; a=b-1 ; b+ ; return (a+b+1) ; void main( ) int b=2 , p=0 ; c=1 ; p=func(b , a) ; printf(%d,%d,%d,%dn, a,b,c,p) ; 输出:4,2,8,9 (5) unsigned fun6(unsigned num) unsigned k=1; do k*=num%10; num/=10; while(num); return k; void main( ) unsigned n=26; printf(%dn, fun6(n); 输出:12输出:5 67 712 64) fdsa) i+; dn,a);。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值