C语言试卷(含答案)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、单项选择题(每小题2分,共40分)
1、sizeof(float)是()
A. 一个双精度型表达式
B. 一个整型表达式
C. 一种函数调用
D. 一个不合法的表达式
2、设 i 是int 型变量,f 是float 型变量,用下面的语句给这两个变量输入值: scanf("i=%d,f=%f",&i,&f);
为了把100 和分别赋给i 和f,则正确的输入为()。
A. 100
B.i=100,f=765.12
C. 100<回车>
D. x=100y=
3、#include<>
voidmain()
{
inta=3,b=2,c=1;
intx=10,y=20;
if(a
if(b!=0)
if(!x)
y=1;
elseif(x)
y=0;
y=-1;
printf("%d",y);
} 上面的C 程序的输出结果是()。
A. 20
B.1
C.0
D.-1
4、C 语言中,while 和do …while循环的主要区别是()。
A. do …while的循环体至少无条件执行一次
B. while 的循环控制条件比 do …while的循环控制条件严格
C. do …while允许从外部转到循环体内
D. do …while的循环体不能是复合语句
5、执行下面的 C 程序段后,输出结果是()。
inta=5;
while(a--);
printf("%d",a);
A. 54321
B. 4321
C.0
D.-1
6、在 C 语言中,()是在所有函数外部声明的。
A. 全局变量
B. 局部变量
C.形参
D.实参
7、分析下面的 C 程序:
#include<>
voidmain()
{
intnum=0;
while(num<=2){
num++;
printf("%d",num);
}
}
输出结果是()。
A. 123
B. 012
C.23
D.12
8、下面的 C 语言代码段的输出结果是()。intj;
for(j=1;j<10;j+=2)
printf("%d",j);
A. 123456789
B. 2468
C. 13579
D. 12468
9、在 C 语言中,表达式:10!=9 的值是()。
A.true
B. 非零值
C.0
D.1
10、分析下面的 C 代码段:
charstr1[15]="SeaView";
charstr2[15]="SeaBreeze";
strcpy(str1,str2);
printf("%s\n",str1);
则输出结果是()。
A. SeaView
B. SeaBreeze
C. SeaViewSeaBreeze
D. SeaBreezeSeaView
10、若w=1,x=2,y=3,z=4,则条件表达式w A.4 B.3 C.2 D.1 11、表达式 18/4*sqrt/8 值的数据类型为()。 A.int B.float C. double D. 不确定 12、在 C 语言中,不正确的 int 类型的常数是( )。 A. 32768 B.0 C. 037 D. 0xAF 13、语句:printf("%d",(a=2)&&(b=-2);的输出结果是( )。 A. 无输出 B. 结果不确定 C.-1 D.1 14、下列描述中不正确的是( )。 A. 字符型数组中可以存放字符串 B. 可以对字符型数组进行整体输入、输出 C. 可以对整型数组进行整体输入、输出 D. 不能在赋值语句中通过赋值运算符"="对字符型数组进行整体赋值 15、以下选项中不能作为C 语言合法常量的是()。 A.'cd' B.+6 C."\a" D.'\011' 16、以下叙述中错误的是()。 A.用户定义的函数中可以没有 return 语句 B.用户定义的函数中可以有多个 return 语句,以便可以调用一次返回多个函数值 ... .. C .用户定义的函数中若没有 return 语句,则应当定义函数为 void 类型 D .函数的 return 语句中可以没有表达式 17、若有定义语句: int m[]={5,4,3,2,1},i=4; ,则下面对 m 数组元素的引用中错误的是 ( )。 A .m[--i] [2*2] [m[0]] [m[i]] 18、已知字母 A 的 ASC Ⅱ代码值为 65,若变量 kk 为 char 型,以下不能.. 正确判断出 kk 中的值为大写字母的表达式是 >='A'&&kk<='Z' B.!(kk>='A' ‖ kk<='Z') C.(kk+32)>='a'&&(kk+32)<='z' (kk)&&(kk<91) 19、若函数调用时的实参为变量时,以下关于函数形参和实参的叙述中正确的是 A .函数的实参和其对应的形参共占同一存储单元 B .形参只是形式上的存在,不占用具体存储单元 C .同名的实参和形参占同一存储单元 D .函数的形参和实参分别占用不同的存储单元 20、以下叙述中错误.. 的是 A .改变函数形参的值,不会改变对应实参的值 B .函数可以返回地址值 C .可以给指针变量赋一个整数作为地址值 D .当在程序的开头包含文件时,可以给指针变量赋 NULL 21、以下描述正确的是( )。 程序的执行是从 main 函数开始,到本程序的最后一个函数结束 程序的执行是从第一个函数开始,到本程序的最后一个函数结束 程序的执行是从 main 函数开始,到本程序的 main 函数结束 程序的执行是从第一个函数开始,到本程序的 main 函数结束 二、将下列程序补充完整。 (每空分,共 30 分) 1.输入三角形的三条边 a,b,c,求三角形的面积。 #include <> #include <> void main( ) { float a,b,c,d,t,s ; printf( “请输入三角形的三条边:”);