(完整版)C语言各章节练习题(含答案)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、C语言概述练习题
选择1.一个C程序的执行是从。
A) 本程序的main函数开始,到main函数结束
B) 本程序文件的第一个函数开始,到本程序文件的最后一个函数结束
C) 本程序文件的第一个函数开始,到本程序main函数结束
D) 本程序的main函数开始,到本程序文件的最后一个函数结束
2.以下叙述不正确的是。
A) 一个C源程序必须包含一个main函数 B)一个C源程序可由一个或多个函数组成
C) C程序的基本组成单位是函数D) 在C程序中,注释说明只能位于一条语句的后面
3.以下叙述正确的是。
A) 在对一个C程序进行编译的过程中,可发现注释中的拼写错误
B) 在C程序中,main函数必须位于程序的最前面
C) C语言本身没有输入输出语句 D) C程序的每行中只能写一条语句
4.一个C语言程序是由。
A)一个主程序和若干个子程序组成 B) 函数组成 C) 若干过程组成 D) 若干子程序组成
二、数据类型、运算符与表达式
选择. 1.若x、i、j、k都是int型变量,则计算下面表达式后,x的值为。 x=(i=4,j=16,k=32) A) 4 B) 16 C) 32 D) 52
2.下列四组选项中,均不是C语言关键字的选项是。
A) define IF type B) getc char printf
C) include case scanf D) while go pow
3.下列四组选项中,均是不合法的用户标识符的选项是。(C语言标识符由字母,数字,下划线组成,开头不能是数字)
A) W P_0 do B) b-a goto int C) float la0 _A D) -123 abc TEMP
8.已知字母A的ASCII码为十进制数65,且c2为字符型,则执行语句c2=‘A’+‘6’-‘3’后,c2中的值为。
A) D B) 68 C) 不确定的值 D) C
填空 1.若有以下定义,则计算表达式y+=y-=m*=y后的y值是【1】。-16
int m=5,y=2;
7.若x和n均是int型变量,且x和n的初值均为5,则计算表达式后x的值为【8】,n 的值为【9】。10 6
x+=n++ //若改为x+=++n 则计算后X为11,n为6
10.已知字母a的ASCII码为十进制数97,且设ch为字符型变量,则表达式ch=‘a’+‘8’-‘3’的值为【12】。 f
三、简单的C程序设计
选择 1. putchar函数可以向终端输出一个 D 。
A) 整型变量表达式 B) 实型变量值 C) 字符串 D) 字符或字符型变量值
3.阅读以下程序,当输入数据的形式为:25,13,10
main()
{ int x,y,z;
scanf(“%d%d%d”,&x,&y,&z);
printf(“x+y+z=%d\n”,x+y+z);
} A) x+y+z=48 B) x+y+z=35 C) x+z=35 D) 不确定值
4.根据下面的程序及数据的输入和输出形式,程序中输入语句的正确形式应该为 C 。main()
{ char ch1,ch2,ch3;
输入语句
printf(“%c %c %c”,ch1,ch2,ch3);
} 输出形式:A B C 输入形式:A B C
A) scanf(“%c%c%c”,&ch1,&ch2,&ch3); B) scanf(“%c,%c,%c”,&ch1,&ch2,&ch3);
C) scanf(“%c %c %c”,&ch1,&ch2,&ch3); D) scanf(“%c%c”,&ch1,&ch2,&ch3); 5.int j=-1; if(j<=1)printf(“***\n”); else printf(“%%%\n”);
A、***
B、%%%
C、***\n
D、%%%\n
6. 有一输入语句scanf(“%d”,k);则不能使float类型变量k得到正确数值的原因是【8】和【9】。格式控制符应为%f;变量k前缺少&
7、写出下面程序的输出结果。
(1) main()
{char c1,c2;
c1=65;c2=66;
printf("%c %d",c1,c2);
printf("%d %c",c1,c2);
}
a ,66 65,b
四、逻辑运算与判断选取控制
2.判断char型变量ch是否为大写字母的正确表达式是 C 。
A)‘A’<=ch<=‘Z’ B)(ch>=‘A’)&(ch<=‘Z’) C)(ch>=‘A’)&&(ch<=‘Z’) D) (‘A’<= ch)AND(‘Z’>= ch)
4.设有:int a=1,b=2,c=3,d=4,m=2,n=2;执行(m=a>b)&&(n=c>d)后n的值为 A 。
A) 0 B) 2 C) 3 D) 4
5.以下程序的运行结果是 B 。
main()
{ int a,b,d=241;
a=d/100%9;
b=(-1)&&(-1);
printf(“%d,%d”,a,b);
}
A) 6,1 B) 2,1 C) 6,0 D) 2,0
7.以下程序的运行结果是 C 。
main()
{ int m=5;
if(m++>5)
printf(“%d\n”,m);