一、单项选择题(本大题共20小题,每小题2分,共40分。在每小题给出的四个备选项中,选出一个正确的答案,并将所选项前的字母填写在答题纸的相应位置上。)
A./* 和 */
B. {和}
C.[ 和]
D.(和)
2.以下名字,可以作为C语言标识符的是()。
A. num#1
B. 2019Flag
C. integer
D. a.3
A.一个C语言源文件(.c文件)可以不包含main函数
B.一个C语言工程(Project)可包含多个源文件(.c文件),即使这些源文件都编译成功,这个C工程也有可能链接失败
C.C语言头文件(.h文件)和源文件(.e文件)都可以进行编译
D.在一个可以正确执行的C语言程序中,一个C语言函数的声明(原型)可以出现任意多次
4,以下选项中,能用做数据常量的是()
A.OxABC
B.0118
C. 1.5el.5
D.115H
5,下列能正确表示a>10或a<0的关系表达式是()。
A. a>=10 or a<=0
B. a<=10 Il a>=0
C. a>=10 Il a<=0
D.a>=10 && a<=0)
6.设有说明:char w; int x; foat y; double z;则表达式wx+z-y值的数据类型为()
A. float
B. char
C. int
D. double
7.以下能正确地定义整型变量a,b和e并为它们赋初值5的语句是()
A. int a = b = c = 5;
B. int a, b, c = 5;
C. a=5, b=5,c=5;
D. int a=5,b=5,c=5;
8.假设字符变量ch中存放有小写英文字母,将其转换为相应的大写英文字母的表达式是()。
A. ch=ch-‘a’+‘A’
B. ch = ch+32
C. tolower(ch)
D. ch-=‘a’+‘A’
9,若想通过a&b来使a的二进制码中的首尾两位为原来的值,而其余为0,则b应为(量a,b均占一个字节)。
A.01111110
B. 10000001
C. 视a值而定
D.无法办到
10.C语言的程序一行写不下时,可以()
A.用逗号换行
B.用分号换行
C.在任意一空格处换行NCE
D.用回车符换行
A.和之前与其具有相同缩进位置的if配对
B.和之前与其最近的if配对
C.和之前与其最近的且不带else的i配对
D. 和之前的第一个if配对日
#include
اint main(){
int a, b;
for(a=1, b=l; a<=100; a++)
{ if(b>=10) break;
if(b%3==1)
{ b+=3;
continue;
}
}
printf(“%d”,a);
return 0;
A.1
B.6
C.5
D.4
A.字符串数组中可以存放ASCII字符集中的任何字符
B.字符串数组的字符可以整体输入输出
C.字符串数组中只能存放键盘上可以找到的字符
D.不可以用关系运算符对数组中的字符串进行比较
14.int a][3]=(1,2,3,4,5,6);语句后, a[1][0]的值是()
A.4
B.1
C.2
D.5
15.下面的程序段将输出()。
char s[10] = “abed”;
printf(“%d\n”, sizeof(s));
A.4
B.5
C. 10
D. 11
16.C语言中静态变量和外部变量的初始化是在()阶段完成的。
A.程序执行过程中
B.编译
C.运行
D.程序外部
17.下列叙述中正确的是()
A.函数的定义不能嵌套,但函数调用可以嵌套
B.函数的定义可以嵌套,但函数调用不能嵌套
C.函数的定义和调用都不能嵌套
D.函数的定义和调用都可以嵌套
18,存在定义int a[10], x, *pa;,若pa=&a[0],下列的哪个选项和其他3个选项不是等价的()。
A.x=pa;
B.x=(a+1);
C.x=*(pa+1);
D.x=a[1];
19.C语言的编译系统对宏命令的处理()
A.在程序运行时进行的
B.在对源程序中其他语句正式编译之前进行的
C.在程序连接时进行的
D.和C程序中的其他语句同时进行编译的
20.有如下定义:
struct Student{
char name[10];
int age;
char gender;
}std[3], *p=std;
则以下各输入语句中错误的是:
A. scanf(“%d”,&(*p).age);
B. scanf(“%c”,&std[0].gender);
C.scanf(“%c”,&(p->gender));
D. scanf(“%s”,&std.name);
二、程序阅读题(本大题共5小题,每小题6分,共30分。请将程序的运行结构填写在答题纸的相应位置上。)
1________
#include
void main() {
int num = 0;
while (num <= 6) {
num++;
if (num % 3 == 0) {
continue;
}
printf("%d#", num);
}
}
2_____
#include
void cal(int *pscore) {
static int bonus = 1;
bonus