1.有如下变量定义:
double a = 2.5, b;
double *p, *q;
假设 p 指向 a,q 指向 b,则使 b 的值变成 2.5 的正确语句是 ▁▁▁▁▁ 。( )
A:*q = *p; B:q = p; C:b = a; D:*b = *a;
答案:AI参考:正确选项是 D:*b = *a;\n\n解释如下:\n\n首先,变量b并没有被定义或初始化,所以它是一个未初始化的变量。由于变量b是一个双精度浮点数,它的默认值是0.0。\n\n接着,变量p被定义为一个指向double类型的指针,并被初始化为指向变量a。变量q也被定义为一个指向double类型的指针,但没有被初始化。\n\n最后,根据题目要求,我们需要将变量b的值设置为变量a的值。由于p指向a,所以*p的值就是a的值,即2.5。因此,正确的语句是*b = *a;,即将未初始化的变量b的值设置为2.5。\n\n所以,选项D是正确的。'
2.有如下变量定义:
double a;
double *p, *q;
假设 p 指向 a,则使 q 指向 a 的正确语句是 ▁▁▁▁▁ 。( )
A:q = p; B:q = a; C:q = D:q =
答案:AI参考:答案为 A:q = p;\n\n解释:在C语言中,指针变量是指向内存地址的变量,因此变量p指向变量a的内存地址,变量q需要指向变量a的内存地址才能达到相同的效果。选项A中,q = p;语句将p指向a的地址赋值给q,从而实现了q指向a的目的。选项B、C、D中给出的语句不符合C语言语法规则,因此不能实现所需的效果。'
3.在C程序中,函数可以嵌套调用,但不可以嵌套定义。( )
A:对 B:错
答案:AI参考:在C语言中,函数可以嵌套调用,也可以嵌套定义。因此,这个说法是错误的。所以,正确答案是B:错。'
4.关于结构化程序设计
结构化程序设计方法的结构不包括 ▁▁▁▁▁。( )
A:分支结构 B:顺序结构 C:跳转结构 D:循环结构
答案:AI参考:正确选项是C:跳转结构。\n\n结构化程序设计方法的结构包括顺序结构、分支结构和循环结构,而不包括跳转结构。跳转结构通常用于程序中的异常处理或中断执行等特殊情况,不属于结构化程序设计的基本结构。'
5.下面哪个表达式的值是2。( )
A:5%-3 B:-5%-3 C:6%3 D:-5%3
答案:AI参考:正确答案是D:-5%3。\n\n选项A:5%-3的结果是2%,选项B:-5%-3的结果是-8%,选项C:6%3的结果是2,都不是2,只有选项D:-5%3的结果是-2,所以选D。'
6.下列程序执行后的输出结果是( )

A:G B:H C:J D:I
答案:AI参考:选项C:J是正确答案。\n\n程序执行后,首先将变量i的值赋给j,再将变量j的值赋给输出结果。所以,输出结果为j的值,即J。'
7.下面程序计算100之内能被3整除的整数之和。阅读程序,从4个选项中选出合适的选项填到【1】处,使程序功能完整。( )
A.break
A:continue B:return C:return 0
答案:AI参考:选项C:return 0\n\n解释:根据题目描述,程序的功能是计算100之内能被3整除的整数之和。在C语言中,如果一个函数不需要返回任何值,可以使用return 0来表示。因此,选项C是正确的。其他选项不符合题目要求。'
8.以下说法正确的是:( )
A:C语言头文件(.h文件)和源文件(.c文件)都可以进行编译 B:一个C语言源文件(.c文件)必须包含main函数 C:在一个可以正确执行的C语言程序中,一个C语言函数的声明(原型)可以出现任意多次 D:一个C语言源文件(.c文件)可以包含两个以上main函数
答案:AI参考:正确选项是:C\n\n解析如下:\n\nA. C语言头文件(.h文件)和源文件(.c文件)都可以进行编译,这个说法是正确的,但是通常头文件主要用来声明函数和变量,源文件用来定义这些函数和变量。\n\nB. 一个C语言源文件(.c文件)必须包含main函数,这个说法不正确,因为C语言源文件可以包含任意多个函数,包括main函数和其他用户自定义的函数。\n\nC. 在一个可以正确执行的C语言程序中,一个C语言函数的声明(原型)可以出现任意多次,这个说法是正确的,因为C语言中函数的原型声明是允许出现多次的。\n\nD. 一个C语言源文件(.c文件)可以包含两个以上main函数,这个说法不正确,因为一个C语言源文件中只能有一个main函数,main函数是程序的入口点。\n\n因此,答案为C。'
9.输出整数
printf 函数输出整数时不能使用 ▁▁▁▁▁ 格式限定符。( )
A:%f B:%o C:%d D:%X
答案:AI参考:正确选项是 B::%o\n\n在 printf 函数中,输出整数时可以使用格式限定符来控制输出的格式,其中 %d 是用于输出十进制整数,%f 是用于输出浮点数,%X 是用于输出十六进制大写字母表示的整数。但是,输出整数时不能使用 %o 格式限定符,%o 用于输出八进制整数,与输出整数的需求不符。因此,选项 B 是正确答案。'
10.在C语言中,数字029是一个( )。
A:非法数 B:十六进制数 C:八进制数 D:十进制数
答案:八进制
11.在以下一组运算符中,优先级最高的运算符是( )。
A:&& B:= C:% D:<=

12.C语句的结束符:通常,C 语句末尾以 ▁▁▁▁▁ 结束。( )
A:分号( ; ) B:逗号( , ) C:句号( . ) D:冒号( : ) 13.以下程序的运行结果是( )。A.3, 6
A:3, 7 B:6, 7 C:4, 7 14.在一个被调用函数中,关于 return 语句使用的描述,错误的是( )。
A:被调用函数中可以不用 return 语句 B:被调用函数中可以使用多个 return 语句 C:被调用函数中,如果有返回值,就一定要有 return 语句 D:被调用函数中,一个 return 语句可以返回多个值给调用函数 15.如果int a=3,b=4;则条件表达式"aA:0 B:3 C:1 D:4 16.执行以下循环语句时,下列说法正确的是( )。
A:循环体将执行一次 B:循环体将执行无限次 C:循环体将执行两次 D:系统将提示有语法错误 17.在嵌套使用if语句时,C语言规定else总是( )
A:和之前与其最近的且不带else的if配对 B:和之前与其具有相同缩进位置的if配对 C:和之前与其最近的if配对 D:和之前的第一个if配对 18.对于如下说明,语法和语义都正确的赋值是_____。(Cint c, *s, a[]={1, 3, 5};
A:s=&a[1]; B:c=a; C:c=*s; D:s[0]=a[0]; 19.C语言中,以下( )是合法的字符常量。
A:"a" B:'$' C:'z' D:'A' E:'0' 20.else 总是与它上面最近的且尚未配对的 if 配对。( )
A:对 B:错 21.内存单元的地址与内存单元中的数据是两个完全相同的概念。( )
A:正确 B:错误 22.实型数据可以进行求余数运算%。( )
A:正确 B:错误 23.不允许把一个数值或字符赋予指针变量。( )
A:对 B:错 24.C语言程序不区分大小写。( )
A:错误 B:正确 25.过多的注释会影响程序的运行效率。( )
A:错 B:对 26.break 则是结束整个循环过程,不再判断执行循环的条件是否成立。( )
A:对 B:错 27.数组定义中,数组名后是用方括号括起来的常量表达式,不能用圆括号。( )
A:错误 B:正确 28.函数的形参都属于全局变量。( )
A:对 B:错 29.如果strcmp(s1,s2)返回的结果为0,表示字符串s1和s2不相同。( )
A:错 B:对 30.声明数组时,数组名后是用方括号括起来的常量表达式。( )
A:正确 B:错误 31.逻辑表达式-5&&!8的值为1.( )
A:错 B:对 32.判断两个浮点数是否相同的运算虽然符合C语言规则,但是应该尽量避免。( )
A:正确 B:错误 33.C语言程序是从源文件的第一条语句开始执行的。( )
A:对 B:错 34.一个C语言程序中可以有多个main函数(主函数)。( )
A:正确 B:错误 35.指向数组元素的指针只可指向数组的首元素。( )
A:错 B:对 36.内存中的每个存储单元都有一个惟一的地址。( )
A:对 B:错 37.函数返回值的类型是由在定义函数时所指定的函数类型。( )
A:对 B:错 38.下划线是标识符中的合法字符。( )
A:对 B:错 39.如果函数定义出现在函数调用之前,可以不必加函数原型声明。( )
A:对 B:错 40.C 语言中 , 字符串常量最后一个字符是结束标志 , 该结束符是'0' 。( )
A:错 B:对 41.运行包含以下代码段的程序将可能进入死循环。int i = 1;while(i>0){ i++; printf("%d ",i); }( )
A:错误 B:正确 42.C 语言是低级语言。( )
A:错误 B:正确 43.表达式 (j=3, j++) 的值是4.( )
A:对 B:错

温馨提示支付 ¥3.00 元后可查看付费内容,请先翻页预览!
点赞(4) dxwkbang
返回
顶部