程序设计基础试题库一、判断题(共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。在TurboC中,浮点型数据在内存中占4个字节。()22、答案:b。a-b是合法的标识符23、答案:b。char型数据在内存中以反码的形式存储的24、答案:a。C语言中的标识符只能由字母、数字、和下划线三种字符组成25、答案:b。C语言中的关键字属于合法的标识符。26、答案:b。C语言中的整形常量包括十六进制数、八进制数、十进制数、二进制数。27、答案:a。无符号整型变量的取值范围是:0-6553528、答案:b。有符号整型变量的取值范围是:0-6553629、答案:a。在TurboC中,浮点型数据在内存中一般占4个字节。()30、答案:b。a-b是合法的标识符31、答案:b。char型数据在内存中以反码的形式存储的32、答案:a。C语言中的标识符只能由字母、数字、和下划线三种字符组成33、答案:b。C语言中的关键字属于合法的标识符。34、答案:b。C语言中的整形常量包括十六进制数、八进制数、十进制数、二进制数。35、答案:a。无符号整型变量的取值范围是:0-6553536、答案:b。有符号整型变量的取值范围是:0-6553637、答案:b。表达式i++与++i在任何场合功能完全相同38、答案:b。若a是实型变量,C程序中允许赋值a=10,因此实型变量中允许存放整型数39、答案:。若i=5,则执行j=i--后,j的值为4,i的值为440、答案:b。若有inti=10,j=2;则执行完ⅰ*=j+8;后ⅰ的值为2841、答案:b。若有说明inti=8,k;则y=float(i)是合法的C表达式42、答案:b。若有说明语句:charc=’\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中并不区分英文字符的大小写。()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。若有定义:inta;则scanf(“%d,a);可以给变量a赋值。()75、答案:a。getchar函数可以从终端接受一个字符76、答案:b。putchar函数可以向终端输出一个字符串77、答案:b。对几个变量在定义时赋初值可以写成:inta=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(%s,abc\0ef);输出结果是:abcef.86、答案:b。C语言规定,else子句总是与它上面的最近的if配对87、答案:b。if(a0);不能看作是一条合法的条件语句88、答案:b。if语句后面的表达式只能是关系表达式89、答案:a。判断整型变量a即是5又是7的整数倍的C表达式是(a%5==0&&a%7==0)90、答案:a。在C语言中10!=9的值是191、答案:a。在C语言中表达式(a=2)&&(b=-2)的值是192、答案: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。表达式!(x0||y0)等价于!(x0)&&!(y0).()105、答案:b。由于do-while循环中循环体语句只能是一条可执行语句,所以循环体内不能使用复合语句。106、答案:b。if语句中条件表达式只能是关系表达式或逻辑表达式107、答案:b。若有intk=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的值是4112、答案:b。for语句只能用于循环次数已经确定的情况113、答案:b。while的循环控制条件比do-while的循环控制条件严格114、答案:b。while语句构成的循环至少执行一次115、答案:a。选择结构(if语句)和循环结构都可以使用嵌套形式116、答案:a。循环语句中如果包含若干条语句,则必须用大括号括起来117、答案:b。在while循环中允许使用嵌套循环,但只能是嵌套while循环。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;I10;I+=2)s+=I;”后,I的当前值为11。126、答案:b。inta[]={0,1,2,3,4,5,6};不是正确的数组说明语句127、答案:b。已有定义:chara[]=xyz,b[]={'x','y','z'};则数组a和b的长度相同128、答案:a。任何数组在使用前必须先定义。129、答案:b。二维数组元素在内存中的存放顺序是按列主顺序存放130、答案:a。若有说明:inta[3][4];则a[1+1][0]是对a数组元素的正确引用131、答案:b。有两个字符数组a、b,则正确的输入语句是:gets(a,b)132、答案:a。有数组定义inta[2][2]={{1},{2,3}};则a[0][1]的值为0133、答案:b。在定义二维数组时,可以将该数组的两个维数全部省略134、答案:a。字符串This大于字符串that135、答案:b。字符数组charc[]=string;有6个数组元素136、答案:b。对二维数组a[3][4],a+1与a[1]都是第一行的首址。137、答案:b。若有定义一维数组inta[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语言中,二维