黄石理工学院《C语言程序设计》试卷2及答案(可编辑)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
考试方式闭
卷制卷分数题号一二三四五总分得分
登分人核分人得分阅卷人一、选择题每小题2分,共40分 1、不能作为C语言标
识符的是( B )A、__char B、#M C、abc D、
A_B_C 2、下面哪个表达式的值为4 D A. 11/3 B. 11.0/3 C. float 11/3 D. int 11.0/3+0.5 3、判断char型变量c1是否为大
写字母的正确表达式( C ) A、’A’ c1 ’Z’ B、 c1 ’A’ & c1 ’Z’ C、 c1 ’A’ && c1 ’Z’ D、‘a c1’ AND
‘Z’ c1 4、源程序要正确地运行,必须要有什么函数?( C ) A. printf
函数 B. 自定义的函数 C. main函数 D. 不需要函数 5、在C语言中逻
辑“真”等价于以下( A )A、整数1B、大于0的数C、小于0的数D、不等于0的数 C语言编译系统在表示逻辑运算结果时,以数值1代表“真”,
以0代表“假”,但在判断一个量是否为“真”时,以0代表“假”,以非0代表“真”。
即将一个非零数值认作为“真”。
逻辑值只有2个,1和0,真和假 6、
若a为整型变量,且有以下语句 D 十进制数表示范围为-32768-32767
对于无符号整数范围为0-65535 .无符号八进制整数表示范围为0-0177777.无符
号十六进制整数表示范围为0x0-0xffff.长整型数的取值范围一般是整型数的
两倍长32位,如对于16位计算机系统,十进制长整型的取值范围为
-2147483648-2147483647.无论是十进制整数,还是八进制整数还是十六进制整数,均有长整型数.长整型数的表示方法是在原来的整数后面加一个后缀"L" 或
小写字母"l" .例如,489L,0756L,0XE46L分别表示十进制,八进制,十六进制长整
型数.. a -017L; printf "%d\n",a ; 若改为printf "%o\n",a ;则输出
为177761 则下面哪个说法是正确的? A. 赋值不合法 B. 输出值为
-17 C. 输出为不确定值 D. 输出值为-15 7、以下程序的运行结果是
( D ) main int x 1,y 2,z 3; z+ x y?++x:++y; 优先级高到低:
++ 关系条件赋值 printf “%d”,z ; A、1 B、2 C、3
D、6 8、如果对以下程序进行编译和运行,其结果为( D ) main int
x,y; x 555;y x+2; y x+2; printf “x %d”,x,y ; 若改为printf “x %d y %d”,x ;
也能通过运行,有结果y的值不确定,有警告警告 c.c 6: 'y' 被赋值但却没
有使用在 main 函数中程序不能通过编译,出现错误提示信息程序能通过编
译,不出现错误提示信息程序能通过编译,但不能运行显示x 555 9、在C
语言的if语句中,用作判断的表达式为 D A. 关系表达式 B.
逻辑表达式 C. 算术表达式 D. 任意表达式 10、请问:下面这个程序段的
输出是什么? A int a,b,c; a 7;b 8;c 9; if a b
a b,
b c;
c a; printf "a %
d b %d c %d\n",a,b,c ; A. a 7 b 8 c
7 B. a 7 b 9 c 7 C. a 8 b 9 c 7 D. a 8 b 9 c 8 11、若有以下说
明和语句,且0 i 10, 则下面哪个是对数组元素的错误引用? ( C ) int a[]
1,2,3,4,5,6,7,8,9,0 , *p, i; p a; A. * a+i B. a[p-a] C. p+i
D. * &a[i] 12、下列程序执行后输出的结果为( D )#include abc static int x 0; ++x; printf “%d”,x ; main abc ; abc ;abc ; A、
000 B、111 C、1,2,3 D、123存储说明符auto,register,extern,static,
对应两种存储期:自动存储期和静态存储期。
auto和register对应自动存储期。
具有自动存储期的变量在进入声明该变量的程序块时被建立,它在该程序块活动
时存在,退出该程序块时撤销。
关键字extern和static用来说明具有静态存储
期的变量和函数。
用static声明的局部变量具有静态存储持续期(static storage duration),或静态范围(static extent)。
虽然他的值在函数调用之
间保持有效,但是其名字的可视性仍限制在其局部域内。
静态局部对象在程序执
行到该对象的声明处时被首次初始化。
main int a[5] 2,4,5,6,10 ,*p,**k; p a; k &p; printf “%d ”,* P++ ; printf “%d\n”,**k ; A、4 4
B、2 2
C、2 4
D、4 6 14、. 该源程序执行后,屏幕上显示什么?
C void main int a; float b; a 4; b
9.5; printf "a %d,b %4.2f\n",a,b ; A. a %d,b %f\n B.
a %d,
b %f C. a 4,b 9.50 D. a 4,b 9. 15、以下程序的输出结果为( D )
#include main int a 010,b 10; printf “%d,%d\n”,a++,--b ; A、10,10 B、8,10 C、10,9 D、8,9 16、若输入12和8,以下程
序的输出结果为() main int a,b,num1,num2,temp; scanf “%d,%d”,&num1,&num2 ; if num1 num2 temp num1; num1 num2;num2 temp;
a num1;
b num2; while b! 0 temp a%b; a b;b temp; printf “%d,%d”,a,num1*num2/a ; A、4,24 B、3,24 C、5,25 D、4,25 17、若有以下说明和语句,则输出结果是 C char str[] "\"c:\\abc.dat\""; printf "%s",str ; A. 字符串中有非法字符 B. \"c:\\abc.dat\" C. "c:\abc.dat" D. "c:\\abc.dat" 18、若k为整型,
以下while循环执行 B 次. k 2; while k 0 printf "%d",k ,k--; printf "\n" ; A. 无限次 B. 0次 C. 1次 D. 2
次 19、若要定义b为5*10的二维数组,正确的定义语句为( D ) A、float b 5,10 B、float b[5,10] C、float [5][10] D、float b[5][10] 20在下列语句中,不正确的是( D ) c 2* a,b
B、m a, b,c
C、printf “%d”, a,b
D、int int x,int int y,int z 得分阅卷人二、填空题每题3分,共30分
若已知 a 10,b 15,c 1。
则表达式a*b&&c的运算结果为____1___。
有以下函数调用语句,请问函数fun1有几个参数______4________。
fun1 x, y,z ,10,fun2 x-1,y-1 3、C语言的基本数据类型分为______整型_____、__实型_______、_字符型________。
4、程序的三种基本结构为______顺序结构___、_选择_结构____、___循环结构_____。
5、有以下语句:int a,b;scan “a %d ,b %d”,&a,&b ;为使变量a,b的值分别为12 ,34 则输入数据的形式为____a 12,b 34_____________________________。
6、若程序片段为i 0;if i 0 printf “####” else printf “****” ;则输出为_程序报错,无法通过编译_。