C语言题库1
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
C语言题库
1.若要用fopen函数打开一个新的二进制文件,该文件要既能读也能写,
则文件方式字符串应是(D)。
A、"rb+"
B、"ab++"
C、"ab"
D、"wb+"
2.设有如下定义: struct sk {int a; float b;} data,*p;
若要使p指向data中的a域,正确的赋值语句是(C)。
A、p=(struct sk*) data.a;
B、*p=data.a;
C、p=&data.a;
D、p=&data,a;
3.对结构体类型的变量的成员的访问,无论数据类型如何都可使用
的运算符是(B)。
A、&
B、.
C、*
D、->
4.下列关于指针定义的描述,错误的是(A)。
A、指针是一种变量,该变量用来存放某个变量的值
B、指针是一种变量,该变量用来存放某个变量的地址值
C、指针变量的类型与它所指向的变量类型一致
D、指针变量的命名规则与标识符相同
5.设有如下的程序段:
char str[ ]="Hello";
char *ptr;
ptr=str;
执行完上面的程序段后,*(ptr+5)的值为(D ).
A、不确定的值
B、'o'的地址
C、'o'
D、'\0'
6.若有以下的定义:int t[3][2];能正确表示t数组元素地址的表达式是(D)。
A、&t[1]
B、t[3]
C、&t[3][2]
D、t[2]
7.下列说法中正确的是(B ).
A、函数调用不占运行时间,只占编译时间.
B、宏替换不占运行时间,只占编译时间.
C、有参数的宏定义,就是函数.
D、在定义宏时,宏名与带参数的括弧之间可以加空格.
8.以下叙述中正确的是(C)。
A、全局变量的作用域一定比局部变量的作用域范围大
B、未在定义语句中赋初值的auto变量和static变量的初值都是随机值
C、静态(static)类别变量的生存期贯穿于整个程序的运行期间
D、函数的形参都属于全局变量
9.下列叙述中正确的是(B)。
A、C语言的子程序有过程和函数两种
B、C语言所有函数都是外部函数
C、C语言的函数可以嵌套定义
D、C语言编译时不检查语法
10.函数的形式参数系统默认存储类型说明是(D)。
A、static
B、extern
C、register
D、auto
11.以下对C语言函数的描述中,正确的是(B)。
A、C函数既可以嵌套定义又可以递归调用
B、C程序必须由一个或一个以上的函数组成
C、函数必须有返回值,否则不能使用函数
D、C程序中有调用关系的所有函数必须放在同一个程序文件中
12.以下不能正确进行字符串赋初值的语句是(A)。
A、char str[5]="good!";
B、char str[5]={'g','o','o','d'};
C、char *str="good!";
D、char str[]="good!";
13.选择正确的输入语句( B).
(其中:char string[10];)使得string的内容为"Hello".
A、scanf("%c", &string);
B、scanf("%s", string);
C、scanf("%c", string);
D、scanf("%s", &string);
14.以下对二维数组a的正确说明是(D)。
A、int a[3][]
B、float a(3,4)
C、float a(3)(4)
D、double a[1][4]
15.下列数组说明中,正确的是(B)。
A、static char str1[],str2[];str2={"China"}; strcpy(str1,str2);
B、static char str[]="China";
C、static char str[]; str="China";
D、static char str1[5],str2[]={"China"}; str1=str2;
16.若有说明 int a[3][4];则对a数组元素的正确引用是(C)。
A、a[1,3]
B、a[2][4]
C、a[1+1][0]
17.以下正确的描述是(A ).
A、只能在循环体内和switch语句内使用break语句
B、continue语句的作用是终止整个循环的执行
C、从多层嵌套的外层循环中退出时,只能使用goto语句
D、在循环体内使用break和continue语句的作用相同
18.在C语言中,为了结束由while语句构成的循环,while后一对圆括号
中表达式的值应该为(C)。
A、非0
B、1
C、0
D、True
19.针对for循环语句,for(表达式1;表达式2;表达式3),下列说法正确的是( C).
A、三个表达式和中间分隔分号均可省略
B、三个表达式和中间分隔分号均不能省略
C、三个表达式可省略,但中间分隔分号不能省略
D、三个表达式不能省略,但中间分隔分号可省略
20.若i为整型变量,则以下循环执行次数是(A)。
for(i=2;i==0;) printf("%d",i--);
A、0次
B、2次
C、无限次
D、1次
21.已知键盘输入a=4,b=3,下面程序输出的结果是(C ).
main()
{ int a,b,s;
scanf("%d%d",&a,&b);
s=a;
if(a
s=s*s;
printf("%d\n",s);
}
A、9
B、13
C、16
D、15
22.算术运算符、赋值运算符和关系运算符的运算优先级按从高到低的顺序依次为(A )。
A、算术运算、关系运算、赋值运算
B、关系运算、赋值运算、算术运算
C、算术运算、赋值运算、关系运算
D、关系运算、算术运算、赋值运算
23.在C语言中,能代表逻辑值“真”的是(B)。
A、大于0的数