《C语言程序设计》核心试题(1)
(2011-09-13 22:20:32)
标签:
c语言杂谈 |
分类: 教学文件 |
第一部分 C语言理论基础
(1)算法具有五个特性,以下选项中不属于算法特性的是
B)简洁性
C)可行性
D)确定性
(2)
以下叙述中正确的是
B)用C程序实现的算法可以没有输出但必须要有输入
C)用C程序实现的算法可以没有输入但必须要有输出
D)用C程序实现的算法可以既没有输入也没有输出
(3)
用C语言编写的代码程序
A)
可立即执行
C)
经过编译即可执行
(4)
结构化程序由三种基本结构组成,三种基本结构组成的算法
A)
可以完成任何复杂的任务
C)
只能完成符合结构化的任务
(5)
一个算法应该具有“确定性”等5个特性,下面对另外4个特性的描述中错误的是
A)
(6)
以下叙述中正确的是
A) C语言的源程序不必通过编译就可以直接运行
B) C语言中的每条可执行语句最终都将被转换成二进制的机器指令
C) C源程序经编译形成的二进制代码可以直接运行
D) C语言中的函数不可以单独进行编译
(7)
以下叙述中正确的是
A) C语言比其他语言高级
B) C语言可以不用编译就能被计算机识别执行
C) C语言以接近英语国家的自然语言和数学语言作为语言的表达形式
D) C语言出现的最晚,具有其他语言的一切优点
(8) C语言中用于结构化程序设计的三种基本结构是
A)
顺序结构、选择结构、循环结构
C) for、while、do-while
(9)
结构化程序设计所规定的三种基本控制结构是
A)
输入、处理、输出
C)
顺序、选择、循环
(10)
要把高级语言编写的源程序转换为目标程序,需要使用
A)
编辑程序
答案:
1)
6)
一、选择题
(1)以下叙述中错误的是
(2)以下叙述中错误的是
(3)以下不能正确计算代数式
值的C语言表达式是
A)1/3*sin(1/2)*sin(1/2)
C)pow(sin(0.5),2)/3
(4)以下能正确定义且赋初值的语句是
A)int
(6)有以下程序段
A)3
(7)以下选项中可作为C语言合法常量的是
B)-080
C)-8e1.0
D)-80.0e
(8).以下不能定义为用户标识符的是
B)_0
C)_int
D)sizeof
(9)以下选项中,不能作为合法常量的是
B)1.234e0.4
C)1.234e+4
D)1.234e0
(10)有以下程序
main()
{
}
B)12353513
C)12343514
D)12343513
(11)若整型变量a、b、c、d中的值依次为:1、4、3、2。则条件表达式a<b?a:c<d?c:d的值
(12)下列选项中,不能用作标识符的是
A) _1234_
(13)有以下程序
main()
{ int m=3,n=4,x;
}
A) 3
(14)以下符合C语言语法的实型常量是
A) 1.2E0.5
(15)
以下4组用户定义标识符中,全部合法的一组是
A) _main
(16)
A) x1=26.8%3
(17)
设有以下定义
int
double
char c=’A’;
#define
A) a++;
A) (a+B) *h/2
C) (a+B) *h*1/2
(19)
以下叙述中正确的是
A) C程序中注释部分可以出现在程序中任意合适的地方
B)
花括号“{”和“}”只能作为函数体的定界符
C)
构成C程序的基本单位是函数,所有函数名都可以由用户命名
D)
分号是C语句之间的分隔符,不是语句的一部分
(20)
以下选项中可作为C语言合法整数的是
A)
10110B
(21)
以下不能定义为用户标识符的是
A)
scanf
(22)
设变量x为float型且已赋值,则以下语句中能将x中的数值保留到小数点后两位,并将第三位四舍五入的是
A)
x=x*100+0.5/100.0;
C)
x=(int)(x*100+0.5)/100.0;
(23)下列关于C语言用户标识符的叙述中正确的是
A)
用户标识符中可以出现在下划线和中划线(减号)
B)
用户标识符中不可以出现中划线,但可以出现下划线
C)
用户标识符中可以出现下划线,但不可以放在用户标识符的开头
D)
用户标识符中可以出现在下划线和数字,它们都可以放在用户标识符的开头
(24)下列关于单目运算符++、--的叙述中正确的是
A)
它们的运算对象可以是任何变量和常量
B)
它们的运算对象可以是char型变量和int型变量,但不能是float型变量
C)
它们的运算对象可以是int型变量,但不能是double型变量和float型变量
D)
它们的运算对象可以是char型变量、int型变量和float型变量
(25)
以下选项中合法的实型常数是
A) 5E2.0
(26)
以下选项中合法的用户标识符是
A)
long
(27)
以下非法的赋值语句是
A)
n=(i=2,++i);
(28)
设a和b均为double型变量,且a=5.5、b=2.5,则表达式(int)a+b/b的值是
A)6.500000
(29)
与数学式子
对应的C语言表达式是
A)
3*x^n(2*x-1)
C)
3*pow(x,n)*(1/(2*x-1))
(30)
若有以下程序:
main()
{
m=(k+=i*=k);printf(“%d,%d\n”,m,i);
}
A) 8,6
(31)
以下选项中,与k=n++完全等价的表达式是
A)
k=n,n=n+1
(32)
若有定义:int
a=8,b=5,C;,执行语句C=a/b+0.4;后,c的值为
A)
1.4
(33)
A) signed
(34)
A)
可以把define和if定义为用户标识符
B)
可以把define定义为用户标识符,但不能把if定义为用户标识符
C)
可以把if定义为用户标识符,但不能把define定义为用户标识符
D) define和if都不能定义为用户标识符
(35)
在C语言中,合法的长整型常数是
A)
OL
(36)
以下有4组用户标识符,其中合法的一组是
A) For
Case Size abc define
(37)
假定x和y为
double型,则表达式x=2,y=x+3/2的值是
A) 3.500000
(38)
以下合法的赋值语句是
A)
(39)
设正x、y均为整型变量,且x=10 y=3,则以下语句的输出结果是
pprintf(”%d,%d\n”,x--,--y);
A)
10,3
(40)
以下程序的输出结果是
main()
{
printf(“%d\n”,(a+a-=a*a) );
}
(41)
以下所列的C语言常量中,错误的是
A)
0xFF
(42)
下列选项中,合法的C语言关键字是
A)
VAR
(43)
以下变量x.、y、z均为double类型且已正确赋值,不能正确表示数学式子
的C语言表达式是
A)
x/y*z
(44)
若a为int类型,且其值为3,则执行完表达式a+=a-=a*a后,a的值是
A) -3
(45)
若变量已正确定义并赋值,下面符合C语言语法的表达式是
A)
a:=b+1
(46) C语言中运算对象必须是整型的运算符是
A)
%=
(47)
若已定义x和y为double类型,则表达式x=1,y=x+3/2
的值是
A)
1
(48)
A)
a==1
(49)
int
c3=1.0/c2*c1;
A)
0
(50)
(51)
(52)
A) short
_a=1-.le-1;
(53)
A)
复数型
(54)
在C语言中,不正确的int类型的常数是
A)
32768
(55)
设x、y、z和k都是int型变量,则执行表达式:x=(y=4,z=16,k=32)后,x的值为
A)
4
(56)
A)
a+=a-=(b=4)*(a=3)
C)
a=a*3=2
(57)
假定有以下变量定义:
A) x%=(k%=5)
(58)
A)
把x和y按从大到小排列
C)
无确定结果
(59)
以下程序的输出结果是
A) 10
(60)
A)
swicth
(61)
A)1
(62) C语言提供的合法的数据类型关键字是
A)
Double
(63)
A)
0L
(64)
若有说明和语句:
A)
7
(65) C
A)
整型、实型、逻辑型
C)
整型、字符型、逻辑型
(66) C语言中,运乍对象必须是整型数的运算符是
A)
%
(67)
printf("%d\n",z=(x%y,x/y));
的输出结果是
A)
1
(68)
以下程序的输出结果是
main()
{
printf("%d
%d\n",x--,--y);
(69)
下列语句中符合C语言语法的赋值语句是
A) a=7+b+c=a+7;
(70)
在C语言中,要求运算数必须是整型的运算符是
A)
%
(71)
A)
void
(72)
A)
552
(73) C语言程序的基本单位是
A)
程序行
(74)
请选出合法的C语言赋值语句
A)
a=b=58
(75)在C语言中,如果下面的变量都是int类型,则输出的结果是
sum=pad=5; pAd=sum + + ,pAd + + , + + pAd;
printf("%d\n",pad);
A)
7
(76)以下程序的输出结果是
# include <stdio.h>
main()
{ int
printf("%d,%d\n",+ +i , j -
-);
二、填空题
(1)语句:x++;、++x;
(2)
若有定义:int
c=(a-=(b-5));
c=(a)+(b=3);
(3)
设x和y均为int型变量,且x=1,y=2,则以下表达式的值为【3】
。
1.0+x/y
(4)
数学式子
写成C语言表达式是
【4】
。
(5)
设a、b、c为整型数,
且a=2、b=3、c=4,
则执行完以下语句:
a*=16+(b++)-(++c);
后,a的值是
【5】
。
答案:
一、填空题
01)
06)
11)
16)
21)
26)
31)
36)
41)
46)
51)
56)
61)
66)
71)
76)
二、填空题
(1)x+=1
(2)3
(3)1.0
(4)pow(sin(x),2) * (a+b)/(a-b)
或 sit(x) * sit(x) *
(a+b)/(a-b)
(5)28