1.以下不是关键字的是【 】。
A:continue
B:If
C:char
D:default
答案:AI参考:正确答案是C:char。\n关键字是指在编程语言中具有特殊含义的词汇或词语,如continue、if、default等。而char不是编程语言中的关键字,它通常用于定义字符型变量。因此,选项C是正确答案。'
2.C语言中【 】。
A:不能使用do-while语句构成的循环
B:do-while语句构成的循环,当while语句中的表达式值为零时结束循环
C:do-while语句构成的循环必须用break语句才能退出
D:do-while语句构成的循环,当while语句中的表达式值为非零时结束循环
答案:AI参考:正确选项是【D:do-while语句构成的循环,当while语句中的表达式值为非零时结束循环】。\n\ndo-while循环是一种循环结构,它会在执行完一次循环体后,再检查while语句中的表达式是否为真。如果表达式值为非零,则继续循环;如果表达式值为零,则结束循环。因此,选项D是正确的。其他选项都不正确,因为do-while循环不需要使用break语句退出,也不需要排除do-while循环中使用do-while循环。'
3.以下叙述中正确的是【】。
A:一个C源程序可由一个或多个函数组成
B:C源程序的基本组成单位是函数
C:在C源程序中,注释说明只能位于一条语句的最后
D:一个C源程序必须包含一个main()函数
答案:AI参考:正确选项为BCD。\n\nA选项错误,一个C源程序可以由一个或多个函数组成,这是正确的,但是并不是C源程序的基本组成单位。C源程序的基本组成单位是语句,函数只是语句的一种组织形式。\n\nC选项错误,注释说明不仅可以位于一条语句的最后,也可以放在代码的任何位置,但是不能放在函数定义或者声明之前。\n\nD选项正确,一个C源程序必须包含一个main()函数,这是C语言程序的入口点。\n\n因此,本题答案为BCD。'
4.以下4个选项中,可以看作是一条语句的有【】。
A:{;}
B:if(b==0) m=1;n=2;
C:if(a>0)
D:a=0,b=0,c=0;
答案:AI参考:正确选项为B:if(b==0) m=1;n=2;\n\n原因解释:\n\nA:{;}:这个语句格式是一个空语句,不执行任何操作。\n\nC:if(a>0):这是一个完整的条件语句,但是如果只写这个,不会执行任何操作,需要配合后面的语句块来执行具体的操作。\n\nD:a=0,b=0,c=0;:这个语句格式并不是一条语句,而是一个复合语句,它包含三个赋值操作,需要使用花括号 {} 来包围起来。\n\n只有B:if(b==0) m=1;n=2;是一个完整的语句,它包含一个条件判断和一个赋值操作,满足语句的基本格式和要求。因此,B是唯一可以看作是一条语句的选项。'
5.若有以下程序段,并且w和k都是整型变量:for(w=1;w<=k;w++)
printf("*");
则与上面程序段等价的循环语句是【】。
A:for(k=1;kprintf("*");
B:w=k;do {w--;printf("*");} while(w!=0);
C:for(w=k;w;--w)printf("*");w=k;
D:w=k;while(w--!=0)printf("*");
E:for(w=k;w!=0;w--)printf("*");
答案:AI参考:正确选项是【E:for(w=k;w!=0;w--)printf("*");】。\n\n这段程序段是一个for循环,其功能是打印从1到k的星号(*)。选项E中的for循环与原程序段的功能相同,也是从k开始,每次循环输出一个星号,直到w不再等于0为止。因此,选项E是与原程序段等价的循环语句。其他选项中,A、B、C和D中的循环语句都存在一些问题,例如变量赋值错误、循环条件不正确等。'
6.C语言规定,必须用【 】作为主函数名。
A:Function
B:main
C:stdio
D:include
答案:main
7.语句char str[20];说明str是一个字符串,最多能表示 【】。
A:21个字符
B:19个字符
C:18个字符
D:20个字符
答案:19个字符
8.由系统分配和控制的标准输出文件为【】。
A:打印机
B:磁盘
C:显示器
D:键盘
答案:显示器
9.执行下面的程序时,将1、2、3、4分别赋给a、b、c、d,正确的输入是【 】。#include
A:1 2 3 4
B:1,2,3 4
C:1 2 3,4
D:1,2,3,4
答案:1,2,3 4
10.若定义有:int *p,str[ ]={1,2,3,4,5,6,7,8,910};下列写法中不合法的是 【 】。
A: p = &str;
B:str[5] = str[2];
C:p = str;
D:str[4]=*str+2;
答案:p =
11.在 C 语言中,有关函数的说法,以下正确的是【 】。
A:函数不可嵌套定义,但可嵌套调用
B:函数可嵌套定义,也可嵌套调用
C:函数不可嵌套定义,也不可嵌套调用
D:函数可嵌套定义,但不可嵌套调用
12.若有以下说明:int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a;则数值为6的表达式是【 】。
A:p
B:*(p+5)
C:*(p+6)
D:*p+6
13.设char ch='A';则ch=(ch>='A'&&ch<='Z')?(ch+32):ch的值是【 】。
A:A
B:z
C:a
D:Z
14.在C语言中,函数的数据类型是指【 】。
A:函数形参的数据类型
B:调用该函数时的实参的数据类型
C:任意指定的数据类型
D:函数返回值的数据类型
15.下列运算符中优先级最高的是【 】。
A:!=
B:
C:+
D:%
16.在C语言程序中,表达式5%2的结果是【 】。
A:2.5
B:2
C:3
D:1
17.有以下程序#include
A:E,68
B:输出无定值
C:E,D
D:D,69
18.以下对二维整形数组a的正确定义是【 】。
A:double a[2][4];
B:float a(3)(4);
C:float a(3,4);
D:int a[ ][4];
19.若有以下程序段, int c1=1,c2=2,c3; c3=1.0/c2*c1; 则执行后,c3中的值是【】。
A:0
B:1
C:0.5
D:2
20.若有定义:int a[2][3],则对a数组的第i行第j列元素地址的正确引用为【 】。
A:a[i]+j
B:*(a[i]+j)
C:(a+i)
D:*(a+j)
21.下面是一个初始化指针的语句:int *px = 其中指针变量的名字应该是【】。
A:px
B:*pz
C:a
D:&a
22.有以下程序段#include
A:执行1次
B:无限次
C:一次也不执行
D:有语法错,不能执行
23.有定义语句:int x,y;若要通过scanf("%d,%d",&x,&y);语句使变量x得到数值11,变量y得到数值12,下面四组输入形式中,正确的有【】。
A:11,12
B:11, 12
C:11 12
D:11,12
24.以下选项中,合法的字符常量是【】。
A:"n"
B:'\t'
C:\xaa'
D:\17'
25.设有语句float ave(int a[10]);float f;int w[10];则正确的函数调用形式是【】。
A:f=ave(w[ ]);
B:f=ave(w[10]);
C:printf('%d',ave(w[10]));
D:printf('%f',ave(w));
E:f=ave(w);
26.下列语句能够求出1+2+3+...+100的和的语句是【】。
A:i=1;sum=0;for(;i
B:i=1;sum=0;if(i++
C:i=1;sum=0;do{sum+=i;}while(i
D:i=1;sum=0;while(i++
E:for(i=1,sum=0;i
27.下列对逻辑运算符两侧的运算对象的数据类型描述不正确的是【】。
A:只能是0或1
B:可以是任何类型的数据
C:只能是0或非0正数
D:可以是整型或字符型数据
28.可以不要进行函数原型声明的函数是【】。
A:被调用函数的数据类型是char
B:被调用函数定义的位置在调用函数之前
C:被调用函数的数据类型是float
D:主函数main()
E:被调用函数的数据类型是int
29.下列运算符中右结合的是【】。
A:++
B:!
C:?:
D:>=
E:+
30.以下选项中不是C语言合法整数的是【】。
A:0386
B:0Xffa
C:x2a2
D:10110
31.下列语句正确初始化的是【】。
A:char str[4]={97,98,99,100};
B:char str[]={"a","b","c","d"};
C:char str[]="abcd";
D:char str[4]={'a','b','c','d'};
E:char str[4]="abcd";
32.以下选项中合法的表达式是【】。
A:(char)(65+3)
B:i=j==0
C:x+1=x+1
D:0
33.设有以下定义:int a=0;double b=1.25;char c='A';#define d 2 则下面语句中正确的是【】
A:d++
B:c++
C:b++
D:a++
34.关系表达式的结果可以是【】。
A:0
B:非0值
C:true
D:false
E:1
35.以下关于数组描述错误的是【】。
A:数组的大小是可变的,但所有数组元素的类型必须相同
B:数组的大小是固定的,所有数组元素的类型必须相同
C:数组的大小是固定的,但可以有不同的类型的数组元素
D:数组的大小是可变的,可以有不同的类型的数组元素
36.下列整型常数表示正确的是【】。
A:0x123
B:0123
C:123L
D:123Ul
E:123u
37.下列选项中是C语言合法标志符的有【】。
A:main
B:8abc
C:good_morning
D:stdio.h
38.下列属于双目运算符的是【】。
A:>
B:+=
C:,
D:>>
E:?:
39.在do一while循环体中,一定要有能使while后表达式值变为零("假")的操作()
A:错
B:对
40.空语句可以用来作流程的转向点,即流程从程序其他地方转到此语句处。 ()
A:对
B:错
41.变量的三要素是:变量名、变量类型、变量的值。()
A:错误
B:正确
42.函数的实参和形参可以同名,但代表不同存储单元。()
A:对
B:错
43.只有在a为真(非 0)时,表达式 a&b才需要判断b的值。 ()
A:对
B:错
44.在C语言中,常数045跟45等值。 ()
A:错
B:对
45.C语言中,字符数据用格式说明"%s"来输出,字符串数据用格式说明"%c"来输出。()
A:错
B:对
46.函数的实参和形参可以使用相同的名字。()
A:对
B:错
47.C程序一行只能写一个语句。 ()
A:错误
B:正确
48.表达式1/4*3的值是0.75。()
A:对
B:错
49.if 语句的嵌套是指在 if 语句中又包含一个或多个 if 语句。()
A:对
B:错
50.continue 语句的作用是使程序的执行流程跳出包含它的所有循环 ()
A:错误
B:正确
51.设有int a;float f=5.75;在执行语句a=(int)f;后,f变成了int型。()
A:对
B:错
52.continue 语句的作用是结束整个循环的执行。 ()
A:错误
B:正确
53.自增,自减运算符既可以用于变量又可用于常量和表达式。 ()
A:错
B:对
54.在赋值表达式中,赋值运算符=的左边可以是表达式,例如a+b=5。()
A:错
B:对
55.条件运算符?和:是一对运算符,不能分开单独使用。()
A:对
B:错
56.变量可以先使用后定义。 ()
A:错误
B:正确
57.if语句不可以嵌套。()
A:正确
B:错误
58.在赋值运算中,赋值号两边的数据类型不同时,赋值号右边的类型将自动转换为左边变量的类型。 ()
A:对
B:错
59.a=b+c=1 是正确的赋值表达式 ()
A:对
B:错
60.用标识符来表示的常量称为符号常量。 ()
A:错
B:对
61.字符型数据可以和整数数据一起进行算术运算。()
A:错
B:对
62.C语言中普通字符型变量在内存中占1个字节。()
A:错
B:对
63.C语言中允许同一行内书写多个语句。()
A:对
B:错
64.#include命令不能包含用户自己建立的头文件。()
A:错
B:对
65.(int)x+y 的作用是把 x+y 的结果转换成整型。 ()
A:错
B:对
66.后缀为f 或F的数为浮点数。 ()
A:错
B:对
67.语句if(a=5)printf("%d",a);是合法的。()
A:对
B:错
68.在结构化程序设计中,循环结构就是无休止地反复执行某一部分的操作。()
A:对
B:错
温馨提示支付 ¥3.00 元后可查看付费内容,请先翻页预览!