C语言程序设计基础例题.docx
《C语言程序设计基础例题.docx》由会员分享,可在线阅读,更多相关《C语言程序设计基础例题.docx(58页珍藏版)》请在冰豆网上搜索。
C语言程序设计基础例题
C语言程序设计基础习题集
一、选择填空
知识点1:
C程序的基本结构和算法基本概念
1.C语言程序的基本单位为_______。
A)程序行B)语句C)函数D)字符
2.用C语言编写的代码程序______。
A)可立即执行B)是一个源程序C)经过编译即可执行D)经过编译解释才能执行
3.以下叙述中正确的是______。
A)用C程序实现的算法必须要有输入和输出操作
B)用C程序实现的算法可以没有输出但必须要输入
C)用C程序实现的算法可以没有输入但必须要有输出
D)用C程序实现的算法可以既没有输入也没有输出
4.结构化程序由三种基本结构组成,三种基本结构组成的算法____。
A)可以完成任何复杂的任务B)只能完成部分复杂的任务
C)只能完成符合结构化的任务D)只能完成一些简单的任务
5.在一个C程序中______。
A)main函数必须出现在所有函数之前
B)main函数可以在任何地方出现
C)main函数必须出现在所有函数之后
D)main函数必须出现在固定位置
6.下列关于C语言的叙述错误的是______。
A) 大写字母和小写字母的意义相同
B) 不同类型的变量可以出现在同一个表达式中
C) 在赋值表达式中等号(=)左边的变量和右边的值可以是不同类型
D) 同一个运算符号在不同的场合可以有不同的含义
7.以下叙述中错误的是_______。
A)C程序中的#include和#define行均不是C语句
B)除逗号运算符外,赋值运算符的优先级最低
C)C程序中,j++;是赋值语句
D)C程序中,+、-、*、/、%号是算术运算符,可用于整型和实型数的运算
8.以下程序的功能是给r输入数据后计算半径为r的圆面积s。
程序在编译时出错,出错的原因是________。
main()
/*Beginning*/
{intr;floats;
scanf("%d",&r);
s=p*r*r;printf("s=%f\n",s);
}
A)注释语句书写位置错误B)存放圆半径的变量r不应该定义为整型
C)输出语句中格式描述符非法D)计算圆面积的赋值语句中使用了非法变量
知识点2:
数据和表达式计算
9.以下标识符中,不能作为合法的C语言用户定义标识符的是_____。
A)a3B)ifC)_123D)IF
10.以下数据中,不正确的数值或字符常量是_____。
A)011B)3.987E-2C)018D)0xabcd
11.若变量x、y已正确定义并赋值,以下符合C语言语法的表达式是______。
A)++x,y=x--B)x+1=yC)x=x+10=x+yD)double(x)/10
12.以下不正确的C语言标识符是____。
A) int B) a_1_2 C) ab1exe D) _x
13.以下是正确的C语言标识符是____。
A) #define B) _123 C) %d D) \n
14.下列不属于C语言关键字的是 ____。
A) default B) register C) enum D) external
15.正确的自定义标识符是_______。
A)ifB)iFC)a*bD)8bq
16.正确的自定义标识符是________。
A)a=2B)a+bC)nameD)default
17.C语言的关键字是________。
A)NULLB)fileC)includeD)typedef
18.C语言程序从main()函数开始执行,所以main函数要写在____。
A) 程序文件的开始 B) 程序文件的最后C) 它所调用的函数的前面 D) 程序文件的任何位置
19.在C语言中,错误的常数是______。
A)1E+0.0B)5C)0xafD)0L
20.在C语言中,错误的int类型的常数是____ 。
A) 32768 B) 0 C) 037 D) 0xAF
21.C语言中最简单的数据类型包括_______。
A)整型、实型、逻辑型B)整型、实型、字符型
C)整型、字符型、逻辑型D)整型,实型,逻辑型,字符型
22.下列变量定义中合法的是_______。
A)short_a=1-.le-1; B)double b=1+5e2.5;
C)long do=0xfdaL; D)float 2_and=1-e-3;
23.在C语言中,整数-8在内存中的存储形式是________ 。
A) 1111 1111 1111 1000 B) 1000 0000 0000 1000
C) 0000 0000 0000 1000 D) 1111 1111 1111 0111
24.C语言中字符型(char)数据在内存中的存储形式是____。
A) 原码 B) 补码 C) 反码 D) ASCII码
25.将字符g赋给字符变量c,正确的表达式是____ 。
A) c=\147 B) c="\147" C) c='\147' D) c='0147'
26.将空格符赋给字符变量c,正确的赋值语句是____。
A) c='\0' B) c=NULL C) c=0 D) c=32
27.字符串"\"EOF\n=-\61\""的长度是____。
A) 8 B) 9 C) 14 D) 非法字符串
28.字符串""的长度是____。
A) 0 B) 1 C) 2 D) 非法字符串
29.错误的转义字符是____。
A)'\091'B)'\\'C)'\0'D)'\''
30.以下两组字符中,不正确的C语言转义字符分别是_____。
A)'\\'B)'071'C)'\b'D)'\xaa'
31.若有以下程序段,c3中的值是_____。
intc1=1,c2=2,c3;
c3=c1/c2;
A)0B)1/2C)0.5D)1
32.设有intx=11;则表达式(x++*1/3)的值是_____。
A)3 B)4 C)11 D)12
33.以下选项中,值为1的表达式______。
A)1-"0" B)1-"\0" C)"1"-0 D)"\0"-"0"
34.设变量x为float型且已赋值,则以下语句中能将x中的数值保留到小数点后两位,并将第三位四舍五入的是_____。
A)x=x*100+0.5/100.0B)x=(x*100+0.5)/100.0
C)x=(int)(x*100+0.5)/100.0D)x=(x/100+0.5)*100.0
35.表达式3.6-5/2+1.2+5%2的值是______。
A)4.3B)4.8C)3.3D)3.8
36.已知 int a[3][2]={3,2,1};则表达式"a[0][0]/a[0][1]/a[0][2]"的值是____。
A) 0.166667 B) 1 C) 0 D) 错误的表达式
37.逗号表达式"(a=3*5,a*4),a+15"的值是____。
A) 15 B) 60 C) 30 D) 不确定
38.已知int x=(1,2,3,4);变量x的值是____。
A) 1 B) 2 C) 3 D) 4
39.如果int a=1,b=2,c=3,d=4;则条件表达式"a
a:
cc:
d"的值是____。
A) 1 B) 2 C) 3 D) 4
40.与条件表达式"(n)?
(c++):
(c--)"中的表达式(n)等价的表达式是____。
A) (n==0) B) (n==1) C) (n!
=0) D) (n!
=1)
41.已知 int x=1,y=1,z=1;表达式"x+++y+++z++"的值是____。
A) 3 B) 4 C) 5 D) 表达式错误
42.已知大写字母A的ASCII码是65,小写字母a的ASCII码是97。
以下不能将变量c中的大写字母转换为对应小写字母的语句是_____。
A)c=(c-'A')%26+'a'B)c=c+32C)c=c-'A'+'a'D)c=('A'+c)%26-'a'
43.表达式sizeof(double)是 _____。
A) 函数调用 B) double型表达式 C) int型表达式 D) 非法表达式
知识点3:
输入输出
44.下列程序的输出结果是_____。
A)3 B)3.2 C)0 D)3.07
main()
{doubled=3.2;intx,y;
x=1.2;y=(x+3.8)/5.0;
printf("%d\n",d*y);
}
45.下列程序执行后的输出结果是(小数点后只写一位)_____。
A)6 6 6.0 6.0 B)6 6 6.7 6.7
C)6 6 6.0 6.7 D)6 6 6.7 6.0
main()
{doubled; floatf; lingl; inti;
i=f=1=d=20/3;
printf("%d%ld%f%f\n",i,l,f,d);
}
46.执行语句 printf("%x",-1);屏幕显示____。
A) -1 B) 1 C) -ffff D) ffff
47.若a为整型变量,则以下语句______。
a=-2L;
printf("%d\n",a);
A)赋值不合法B)输出值为-2C)输出为不确定值D)输出值为2
48.若变量都已正确定义,则程序段______。
a=3;b=4;
a>b?
printf("***a=%d",a++);printf("###b=%d",b++);
A)输出为:
***a=4B)输出为:
***a=3
C)输出为:
###b=4D)输出为:
###b=5
49.使用语句scanf("x=%f,y=%f",&x,&y);输入变量x、y的值(□代表空格),正确的输入是____。
A) 1.25,2.4 B) 1.25□2.4 C) x=1.25,y=2.4 D) x=1.25□y=2.4
50.设有输入语句scanf("a=%db=%d",&a,&b);如果运行程序,该如何输入数据______。
A)a=6,b=7B)67C)a=6b=7D)6,7
51.设inta=3,b=4;执行printf("%d,%d",(a,b),(b,a));后的输出结果是_____
A)3,4B)4,3C)4,4D)3,3
52.有以下程序,以下叙述中正确