程序设计基础试题库
一、判断题(共203小题)(a为正确,b为错误) 1、答案:a。 c程序的基本组成单位是函数 2、答案:b。c程序的一行只能写一条语句.
3、答案:b。main 函数必须写在一个 C 程序的最前面
4、答案:a。一个 C 程序可以包含若干函数,但必须有主函数。
5、答案:b。一个c程序的执行是从本程序文件的第一个函数开始,到本程序文件的最后一个函数结束 6、答案:a。C语言是一种结构化程序设计语言。()
7、答案:a。在标准C中,语句是用来完成一定的操作的,故声明部份不是语句。
8、答案:a。一个C程序可以有若干个C源程序组成,而C源程序可以由若干个函数和预处理组成。() 9、答案:a。在标准C中,语句必须以“;”结束。()
10、答案:a。C语言本身并不提供输入输出语句。但可以通过输入输出函数来实现数据的输入输出。()● 11、答案:b。在标准C中,使用所有输入输出函数必须包含“stdio.h”文件。() 12、答案:b。在标准C语言中,main函数必须出现的所有其他函数之前。() 13、答案:b。在C程序中,注释说明只能位于一条语句的后面
14、答案:b。在对一个C程序进行编译的过程中,可发现注释中的拼写错误 15、答案:a。C语言程序的三种基本结构是顺序结构、选择结构和循环结构。() 16、答案:a。计算机算法可以分两大类别:数值运算算法和非数值运算算法。 17、答案:b。用C语言实现的算法必须要有输入和输出操作
18、答案:a。一个算法应该具备有穷性、确定性、输入、输出和有效性。() 19、答案:a。一个算法应包含有限的操作步骤,而不能是无限的。
20、答案:a。表示一个算法常用的方法是:自然语言、传统流程图、结构化流程图、计算机语言、伪代码等。 21、答案:b。在Turbo C中,浮点型数据在内存中占4个字节。( ) 22、答案:b。a-b是合法的标识符
23、答案:b。char型数据在内存中以反码的形式存储的
24、答案:a。C语言中的标识符只能由字母、数字、和下划线三种字符组成 25、答案:b。C语言中的关键字属于合法的标识符。
26、答案:b。C语言中的整形常量包括十六进制数、八进制数、十进制数、二进制数。 27、答案:a。无符号整型变量的取值范围是:0-65535
共 52 页 第 1 页
28、答案:b。有符号整型变量的取值范围是:0-65536
29、答案:a。在Turbo C中,浮点型数据在内存中一般占4个字节。( ) 30、答案:b。a-b是合法的标识符
31、答案:b。char型数据在内存中以反码的形式存储的
32、答案:a。C语言中的标识符只能由字母、数字、和下划线三种字符组成 33、答案:b。C语言中的关键字属于合法的标识符。
34、答案:b。C语言中的整形常量包括十六进制数、八进制数、十进制数、二进制数。 35、答案:a。无符号整型变量的取值范围是:0-65535 36、答案:b。有符号整型变量的取值范围是:0-65536 37、答案:b。表达式i++与++i在任何场合功能完全相同
38、答案:b。若 a 是实型变量, C 程序中允许赋值 a=10, 因此实型变量中允许存放整型数 39、答案:。若i=5,则执行j=i- -后,j 的值为4,i的值为4
40、答案:b。若有 int i=10, j=2;则执行完ⅰ* =j+8; 后ⅰ的值为28 41、答案:b。若有说明int i=8,k;则y=float(i)是合法的C表达式
42、答案:b。若有说明语句:char c=’\\72’;则变量c包含了三个字符。 43、答案:b。’\\x61’代表字符‘a’。
44、答案:a。一个变量在内存中占据一定的存储单元
45、答案:b。在 C 程序中对用到的所有数据都必须指定其数据类型 46、答案:a。在C程序中,%是只能用于整数运算的运算符 47、答案:b。在C程序中,APH和aph是两个相同的变量 48、答案:a。在C程序中,逗号运算符的优先级最低。 49、答案:b。在C语言中,1.2E0.5是合法的实型常量 50、答案:b。在C语言中,a=a*3=2是合法的C表达式 51、答案:a。通常字符常量的长度为1个字节
52、答案:a。自增运算符 (++) 或自减运算符 (--) 只能用于变量,不能用于常量或表达式 53、答案:a。常量是在整个程序运行过程中不能改变的量。() 54、答案:b。“A”是一个字符常量。()
55、答案:a。标准C中并没有提供定义常量的方法。()
56、答案:a。在程序运行过程中其值可以改变的量称为变量。() 57、答案:b。在标准C中并不区分英文字符的大小写。()
共 52 页 第 2 页
58、答案:a。在标准C中,数据在内存中是以二进制形式表示的。() 59、答案:b。在标准C中,变量可以先使用再定义。()
60、答案:a。在标准C中,整型变量与字符变量是可以通用的。() 61、答案:b。“%”运算两侧的数据可以是任意类型的数据。() 62、答案:b。在标准C中,参与运算的数据类型必须完全一致。() 63、答案:b。“++”运算符的优先级比“+”运算符的优先低。()
64、答案:b。逗号运算符的求值顺序是从左到右的,逗号表达式的值为第一个表达式的值。() 65、答案:b。在标准C中,变量定义一定要出现在函数开始部分。() 66、答案:b。在C语言中,在交换两个数必须使用中间变量。()
67、答案:a。字符串必须以‘\\0’结束,但字符数组可以不包括‘\\0’。() 68、答案:b。表达式“3.6%2”符合C语言语法。()
69、答案:b。在C程序中,无论是整数还是实数,都能被准确无误地表示 70、答案:a。逻辑运算符<关系运算符<算术运算符<赋值运算符是错误的。 71、答案:b。08是正确的整型常量。()
72、答案:b。若x 是单精度实型变量,表达式(x=10/4)的值是2.5。() 73、答案:b。输入实型数据时,可以规定实型数的小数位数
74、答案:b。若有定义:int a;则scanf(“%d\a赋值。( ) 75、答案:a。getchar函数可以从终端接受一个字符 76、答案:b。putchar函数可以向终端输出一个字符串
77、答案:b。对几个变量在定义时赋初值可以写成: int a=b=c=3; 78、答案:b。在标准C中,“=”是判断两个数是否相等。()
79、答案:a。在标准C中,赋值表达式可以出现在表达式的任何位置。()
80、答案:b。在标准C中,在函数printf格式说明部分的字符都是以转义字符处理。() 81、答案:b。在标准C中,以“%f”形式输出的所有数字都是有效数字。() 82、答案:b。在C语言中输入数据时可以指定数据的精度。()
83、答案:a。在标准C中,在使用函数scanf输入数据时必须同函数中输入格式一致。() 84、答案:a。若有正确变量定义,表达式x=y=1符合c语言语法。() 85、答案:b。printf(\输出结果是:abc ef.
86、答案:b。C语言规定,else子句总是与它上面的最近的if配对 87、答案:b。if(a>0); 不能看作是一条合法的条件语句
共 52 页 第 3 页
88、答案:b。if语句后面的表达式只能是关系表达式
89、答案:a。判断整型变量a即是5又是7的整数倍的C表达式是(a%5==0 && a%7==0) 90、答案:a。在C语言中10!=9的值是1
91、答案:a。在C语言中表达式(a=2)&&(b=-2)的值是1 92、答案:b。在switch语句中必须使用break语句 93、答案:b。在switch语句中必须使用break语句
94、答案:b。在标准C中,没有逻辑型数据,故不能使用逻辑表达式。() 95、答案:b。在标准C中,所有关系运算符的优先级都相同。() 96、答案:b。在if语句中,else前一个语句可不加“;”。() 97、答案:b。在标准C中,逻辑表达式中只允许出现逻辑型数据。()
98、答案:b。在标准C中,所有的if——else语句都可以用条件语句替换。() 99、答案:a。在switch语句中,case后可不加“{ }”。()
100、答案:b。在C语言中,将语句if(x==5);写成if(x=5);将导致编译错误。() 101、答案:a。在所有关系运算符中,其优先级最低的是“==和!=”。()
102、答案:b。若x的当前值为5,执行语句“if(x(=3)x=x+5;”后的值仍为5。() 103、答案:a。在C程序中,用整数0表示逻辑“假”。() 104、答案:a。表达式!(x>0||y>0)等价于!(x>0)&&!(y>0) .()
105、答案:b。由于do-while循环中循环体语句只能是一条可执行语句,所以循环体内不能使用复合语句。 106、答案:b。if语句中条件表达式只能是关系表达式或逻辑表达式
107、答案:b。若有 int k=1;while(k=1) k++;则while循环执行的次数是1次 108、答案:a。break语句不能够单独使用,只能用于循环语句和switch语句 109、答案:a。break语句可以用来跳出整个循环语句 110、答案:a。do-while语句构成的循环至少执行一次
111、答案:b。for(i=1; i++<4; );语句结束后变量i的值是4 112、答案:b。for语句只能用于循环次数已经确定的情况
113、答案:b。while 的循环控制条件比 do-while 的循环控制条件严格 114、答案:b。while语句构成的循环至少执行一次
115、答案:a。选择结构(if语句)和循环结构都可以使用嵌套形式 116、答案:a。循环语句中如果包含若干条语句,则必须用大括号括起来
117、答案:b。在 while 循环中允许使用嵌套循环,但只能是嵌套 while 循环。
共 52 页 第 4 页
118、答案:b。在循环过程中,使用break语句和continue语句的作用是一样的 119、答案:b。在标准C中,while和do_while的功能完全相同。
120、答案:b。在标准C中,while后表达式只能是逻辑或关系表达式。 121、答案:b。在标准C中,for语句后的三个表达式必须都出现。
122、答案:b。在标准C中,for语句后的三个表达式是按其先后次序执行的。 123、答案:b。在标准C中,for语句后的三个表达式可以是任意类型的表达式。
124、答案:b。break的作用可以结束循环多重循环,即有多重循环时,可直接跳到最外层。 125、答案:a。执行“for(I=1;I<10;I+=2) s+=I;”后,I的当前值为11。 126、答案:b。int a[ ]={0,1,2,3,4,5,6};不是正确的数组说明语句
127、答案:b。已有定义:char a[]=\则数组a和b的长度相同 128、答案:a。任何数组在使用前必须先定义。
129、答案:b。二维数组元素在内存中的存放顺序是按列主顺序存放
130、答案:a。若有说明:int a[3][4]; 则a[1+1][0]是对a数组元素的正确引用 131、答案:b。有两个字符数组a、b,则正确的输入语句是:gets(a, b) 132、答案:a。有数组定义int a[2][2]={{1},{2,3}};则a[0][1]的值为0 133、答案:b。在定义二维数组时,可以将该数组的两个维数全部省略 134、答案:a。字符串\大于字符串\
135、答案:b。字符数组char c[]=\有6个数组元素
136、答案:b。对二维数组a[3][4],a+1与a[1]都是第一行的首址。
137、答案:b。若有定义一维数组int a[4]的首地址为0078H,则a[1]元素的首地址是0079H(设int型数据占两个字节)。 138、答案:b。定义char *string=”string?”是将字符串的值赋给指针变量string。
139、答案:b。在标准C语言中,字符串是以‘\\0’结束的,故字符串的长度也包括‘\\0’。 140、答案:b。在标准C语言中,数组的下标必须是常量,不允许是表达式。 141、答案:a。在标准C语言中,数组在大小一旦确定就不允许改变。
142、答案:b。在标准C语言中,可以引用整个数组,而不必引用每一个数组元素。
143、答案:b。在对数组进行赋初值时,不管有没有对所有元素赋初值都必须指定数组的长度。 144、答案:a。在标准C语言中,二维数组在内存中的存放次序是以行序为主序。 145、答案:b。函数strcmp(“AShhjjj”,”ASHHJJJ”)的返回值是0。
146、答案:a。在标准C语言中,使用函数strcpy 时可以将‘\\0’一起复制到目标串中。 147、答案:b。a是一维数组名,数组元素a[1]还可以写成“*(a++)”。
共 52 页 第 5 页