当前位置:文档之家› C语言程序设计考试题库

C语言程序设计考试题库

一、判断题1、所谓常量,就是在程序运行过程中其值可以改变的量。

()2、一个C程序可以由多个源程序文件构成,但其中只能有一个main()函数。

()3、在C语言中do-while 语句和for循环均是先执行循环体语句,再判断表达式。

()4、在函数调用中将变量的地址作为实参传递给对应形参时,实现的是单向的值传递。

()5、C语言中所有字符串都是以‘\0’结束的。

()6、do-while构成的循环语句中的循环体最少执行1次。

()7、数组名在C语言中表示的是数组的首地址。

()8、使用gets()函数输入字符串时可以在字符串中输入空格。

()9、算术运算符中‘/’的优先级高于‘%’。

()10、char a[5];该语句表明数组a中的第五个元素为a[5]。

()11、C语言源程序文件的扩展名均为.c。

()12、char a[5];数组a中有a[1]、a[2]、a[3]、a[4]、a[5]共5个元素。

()13、C语言程序区分大小写,字符常量必须定义为大写。

()14、若int i=10,j=2;则执行i*=j+8;后i的值为28。

()15、若int x=100,y=200;则语句printf("%d",(x,y));输出结果为100。

()16、c语言中的标识符只能由字母,数字和下划线三种字符组成。

()17、函数getchar()的作用是:输出一个字符。

()18、一个C语言程序总是从第一个函数开始执行。

()19、在c语言中,char型数据在内存中是以ASCII码形式存储的。

()20、在C语言中switch语句必须使用break语句。

()二、选择题1、以下说法正确的是()。

A、C语言程序总是从第一个函数开始执行。

B、C语言程序中要调用的函数必须在main()函数中定义。

C、C语言程序总是从main()函数开始执行。

D、C语言程序中的main()函数必须放在程序的开始部分。

2、以下几组选项中为合法的标识符是()。

A、intB、floatC、b-aD、_1233、以下定义字符常量PI语句正确的为()A、define PI 3.14B、#define PI 3.14C、#define PI=3.14D、#define PI 3.14;4、起换行作用的转义字符是()A、’\t’B、’\b’C、’\n’D、’\r’5、在以下几组运算符中,优先级最高的运算符是()。

A、<=B、=C、/D、&&6、设有定义“int i=1;”,以下选项的四个表达式中与其他三个表达式的值不相同的是()A、i++B、i+=1C、i+1D、++i7、若变量已正确定义并赋值,以下符合C语言语法的表达式是A、a:=b+1B、int 18.5[%]3C、a=a+7=c+bD、a=b=c+28、以下程序的输出结果为()。

# include <stdio.h>main(){ int a=2,b=5;printf("a=%d,b=%d\n",a,c); }A、a=%2,b=%5B、a=2,b=5C、a=d,b=dD、2,59、定义一整型变量int m,给m输入数值,正确的语句为()A、scanf("%d",m);B、scanf("%d",&m);C、printf("%d",m);D、putchar(m);10、下面程序的输出结果是()。

main(){int a,b;a=3;b=5;if(a>b) printf("%d",a);elseprintf("%d",b);}A、3B、5C、3,5D、5,311、执行下面两个语句后,输出的结果为()。

char c1=97,c2=98;printf("%d %c",c1,c2) ;A、97 98B、97 bC、a 98D、a b12、设有程序段int k=10; while (k=0) k=k-1; 则下面描述中正确的是()A、while循环执行10次B 、循环是无限循环C 、循环体语句一次也不执行D 、循环体语句执行一次13、C语言的三种基本结构是()。

A、顺序结构、逻辑结构、选择结构B、顺序结构、选择结构、循环结构C、逻辑结构、层次结构、网状结构D、层次结构、顺序结构、循环结构14、下面程序段的运行结果是()int n=0;while (n++<=2); printf("%d",n);A、2B、3C、4D、有语法错误15、switch(表达式)语句中表达式的类型不能为()A、整型B、字符型C、整型或者字符型D、实型16、下面程序的输出结果是()#include<stdio.h>void main(){int i,n,k=0;for(i=1;i<=6;i++){n=i%2;while(--n>=0) k++;}printf("%d,%d",k,n);}A、3,-1B、8,-1C、3,0D、8,-217、关于数组元素类型的说法,下列那一项是正确的:()A、必须是整数类型B、必须是整型或实型C、必须是相同数据类型D、可以是不同数据类型18、下列关于输入输出字符串的说法那一项是正确的()A、使用gets(s)函数输入字符串时应在字符串末尾输入“\0”。

B、使用puts(s)函数输出字符串时,输出结束会自动换行。

C、使用puts(s)函数输出字符串时,当输出“\n”时才换行。

D、使用printf(“%s”s)函数输出字符串时,输出结束会自动换行。

19、以下程序段的输出结果是()#include<stdio.h>void main(){int i,j,m=0;for(i=1;i<=5;i+=4)for(j=3;j<=19;j+=4)m++;printf("%d\n",m);}A、10B、15C、20D、2520、设有如下定义: int x=10,y=3,z;则语句printf("%d\n",z=(x%y,x/y)); 的输出结果是()。

A. 1B. 0C. 4D. 321、以下几组选项中均为不合法的标识符是()。

A、A,P_0,doB、float,la0,_AC、b-a,goto,intD、_123,temp,INT22、在C语言中运算对象必须是整型的是()。

A、%B、/C、==D、<=23、设x=2.5,a=7,y=4.7,则算术表达式x+a%3*(int)(x+y)%2/4值为()。

A、2.5B、7C、4.7D、2.7524、下面程序的结果是()。

main(){ int x=1,a=0,b=0;switch(x){ case 0: b++;case 1: a++;case 2: a++;b++; }printf("a=%d,b=%d\n",a,b); }A、a=2,b=1B、a=1,b=1C、a=1,b=0D、a=2,b=225、运行以下程序后,输出()#include<stdio.h>void main(){int k=-3;if(k<=0)printf("****\n");elseprintf("&&&&&\n");}A、&&&&B、****C、****&&&&D、有语法错误不能通过编译26、若变量已说明为int类型,要给a、b、c输入数据,以下正确的输入语句为:()A、read(a,b,c);B、scanf("%d%d%d",a,b,c);C、scanf("%D%D%D",&a,%b,%c);D、scanf("%d%d%d",&a,&b,&c);27、若变量已说明为int类型,要通过以下赋值语句给a赋予10、b赋予22、c 赋予33,以下不正确的输入形式是()scanf("%d%d%d",&a,&b,&c);A、10 22 33B、10,22,33C、10 22D、1033 223328、下面程序的结果是()。

main(){ int x=1;while(x<20){ x=x*x;x=x+1; }printf("%d",x); }A、1B、20C、25D、2629、以下程序的输出结果为()#include<stdio.h>void main(){int a[]={2,3,4,5,6,7,8,9};int i,r=1;for(i=0;i<=3;i++)r=r*a[i];printf("%d\n",r);}A、720B、120C、24D、630、运行如下程序,其结果为()。

main(){int i=3;printf(“%d\n”,++i);}A、4B、3C、2D、531、已定义x和y为int类型,x=5,y=2则表达式“x/y”的值是()。

A、1B、1.0C、1.5D、232、C语言程序是从main函数开始执行的,这个函数写在()。

A、程序文件的开始B、它所调用的函数的前面C、程序文件的最后D、程序文件的任何位置33、若i为整型变量,则for(i=2;i==0;i--) printf("%d",i);循环体执行次数是()。

A、无限次B、0次C、1次D、2次34、下列字符序列中,合法的标识符是()。

A、A>BB、#88C、stu_100D、J.P.Tom35、表达式17%4/8的值为()。

A、0B、1C、2D、336、如程序为char str[13];scanf(“%s”,str); 若输入以下字符How are you! 则str 数组状态为()。

A、HowB、How are you!C、输入错误D、不确定37、若有定义:int a[10];则对数组元素的正确应用是()。

A、a[10]B、a[10-10]C、a(5)D、a[3.5]38、构成c语言源程序的基本单位是()。

A、文本B、过程C、函数D、对象39、如要求从键盘读入含有空格字符的字符串,应使用函数()。

A、getc()B、gets()C、getchar()D、scanf()40、c语言中逻辑真等价于()。

A、整数1B、整数0C、非零数D、TRUE41、以下关于break语句的描述,只有()是正确的。

相关主题