C语言程序设计考试题库_第1页
C语言程序设计考试题库_第2页
C语言程序设计考试题库_第3页
C语言程序设计考试题库_第4页
C语言程序设计考试题库_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、一、 判断题1、所谓常量,就是在程序运行过程中其值可以改变的量。()2、一个C程序可以由多个源程序文件构成,但其中只能有一个main()函数。()3、在C 语言中 do-while 语句和 for 循环均是先执行循环体语句,再判断表达式。 ()4、 在函数调用中将变量的地址作为实参传递给对应形参时,实现的是单向的值传递。 ()5、 C 语言中所有字符串都是以0结束的。 ()6、 do-while 构成的循环语句中的循环体最少执行1 次。 ()7、数组名在C 语言中表示的是数组的首地址。()8、使用gets()函数输入字符串时可以在字符串中输入空格。()9、算术运算符中/ 的优先级高于% 。 (

2、)10、char a5;该语句表明数组a中的第五个元素为a5。()11、C语言源程序文件的扩展名均为.c。()12、char a5;数组 a 中有 a1、a2、a3、a4、a5共 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、一

3、个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-a D、 _1233、以下定义字符常量PI 语句正确的为()A、 define PI 3.14B、

4、 #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+=1 C、 i+1D、 +i7、若变量已正确定义并赋值,以下符合C 语言语法的表达式是A、 a:=b+1 B、 int 18.5%3C、 a=a+7=c+bD、 a=b=c+28、以下程序的输出结

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

6、;if(a>b) printf("%d",a);elseprintf("%d",b);A、 3 B、 5 C、 3,5 D、 5,311、执行下面两个语句后,输出的结果为() 。char c1=97,c2=98;printf("%d %c",c1,c2) ;A、 97 98B、 97 b C、 a 98D、 a b12、设有程序段int k=10; while (k=0) k=k-1; 则下面描述中正确的是()A、while 循环执行10 次B 、循环是无限循环C 、循环体语句一次也不执行D 、循环体语句执行一次13、 C 语言

7、的三种基本结构是() 。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

8、;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)S数输入字符串时应在字符用末尾输入“ 0”。B、使用puts(s)函数输出字符串时,输出结束会自动换行。C、使用puts(s)函数输出字符串时,当输出“ n”时才换行。D、使用printf( %s"s)函数输出字符串时,输出结束

9、会自动换行。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("%dn",m);A、 10B、 15C、 20 D、 2520、设有如下定义: int x=10,y=3,z;则语句 printf("%dn",z=(x%y,x/y); 的输出结果是() 。A. 1 B. 0 C. 4 D. 321、以下几组选项中均为不合法的标识符是() 。A、 A, P_0,do B、 floa

10、t,la0,_A C、 b-a,goto,int D、 _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=%dn",a,b); A、 a=2,b=1 B、 a

11、=1,b=1 C、 a=1,b=0 D、 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、 sc

12、anf("%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、 1033223328、下面程序的结果是() 。main() int x

13、=1;while(x<20) x=x*x;x=x+1;printf("%d",x); A、 1B、 20 C、 25 D、 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*ai;printf("%dn",r);A、 720B、 120C、 24 D、 630、运行如下程序,其结果为() 。main()int i=3;printf(“%dn”,+i);A、 4B、 3C、 2 D、 5 3

14、1、已定义x和y为int类型,x=5,y=2则表达式“ x/y”的值是(A、1 B、 1.0C、 1.5D、 232、 C 语言程序是从main 函数开始执行的,这个函数写在(A、程序文件的开始C、程序文件的最后33、若i 为整型变量,则B、它所调用的函数的前面D 、程序文件的任何位置for(i=2;i=0;i-)printf("%d",i); 循环体执行次数是A、无限次 B、0次C、 1 次 D、 2次)。D、 J.P.Tom34、下列字符序列中,合法的标识符是(A、 A>BB、 #88C、 stu_10035、表达式17%4/8 的值为() 。A、 0B、 1C、

15、 2D、 336、如程序为char str13;scanf(“%s”,str); 若输入以下字符How are you! 则 str数组状态为() 。A、HowB、How are you!C、输入错误D、不确定37、若有定义:int a10;则对数组元素的正确应用是()。A、 a10 B、 a10-10 C、 a(5)D、 a3.538、构成c 语言源程序的基本单位是() 。A、文本 B、过程 C、函数 D、对象39、如要求从键盘读入含有空格字符的字符串,应使用函数() 。A、 getc()B、 gets()C、 getchar() D、 scanf()40、 c 语言中逻辑真等价于() 。A

16、、整数1B、整数0C、非零数D、TRUE41、以下关于break 语句的描述,只有()是正确的。A、在循环语句中必须使用break语句。B 、 break 语句只能用于switch 语句中。C、在循环语句中可以根据需要使用break语句。D、break语句可以强制跳出所有循环。42、若要定义一个具有5 个元素的整型数组,以下错误的定义语句是()A int a5= 0 ; B int b=0,0,0,0,0;C int c2+3; D int i,di;43、若用数组名作为函数调用时的参数,则实际上传递给形参的是() 。A、数组元素的个数B、数组的第一个元素值C、数组中全部元素的植D、数组首地址

17、44、以下叙述正确的是。A) 在 C 程序中,main 函数必须位于程序的最前面。B) C 语言本身没有输入输出语句。C) C 程序的每行只能写一条语句。D) 在对一个C 程序进行编译的过程中,可发现注释中的拼写错误。45、 C 语言规定,在一个源程序中,main 函数的位置A) 必须在最开始B)必须在系统调用的库函数的后面C)可以任意D)必须在最后46、 C 语言中最简单的数据类型包括A)整型、实型、逻辑型B)整型、实型、字符型C)整型、字符型、逻辑型D)字符型、实型、逻辑型47、已知int a=6;则执行a+=4;语句后,a的值为A)36B)0C)-24D)1048、设有程序段int k=

18、10; while (k=0) k=k-1; 则下面描述中正确的是()A while 循环执行10 次B 循环是无限循环C 循环体语句一次也不执行D 循环体语句执行一次49、有如下定义 char str5= ,a?,b? ,0? ,c? ,0?;则语句 printf( %s”,str);的输出结果为() 。A、 ab0c0 B、 ab C、 abcD、 ab c50、阅读以下程序,当输入数据的形式为25,13,10<CR>正确的输出结果为main() int x,y,zscanf("%d%d%d",&x,&y,&z );printf( &

19、quot;x+y+z=%dn" ,x+y+z);。A)x+y+z=48B)x+y+z=35C)x+y+z=35D)不确定值三、填空题1、整型的标示符关键字为 ,字符型标示符关键字为 。2、字符型数据在内存里面存储的是其 值。3、在C语言中,一个char类型数据在内存中所占字节数为 。4、C语言的标识符只能由大小写字母,数字和下划线三种字符组成,而且第一 个字符必须为。5、字符常量使用一对 界定单个字符,而字符串常量使用一对 来界定若干个字符的序列。6、若有定义int a=10,b=3;则a%b的值为, a/b的值为。7、若有定义int a=3;则表达式a+=5的值为。8、int i=

20、5;执行b=i+;后变量b的值为, int i=3;执行b=+i;后变量b 的值为。9、有定义int a=12;则表达式a+5,a*3的值为:。10、表达式2>3的值为: ;表达式3>=0的值为: 。11、C规定,参与逻辑运算的操作数以 代表 真”,以 代表 假”。12、若a、b之一为真,则 a | b的值为。13、若 a=14, b=15, a && b 的值为14、while 循环语句先 后。15、do .while 循环语句先 后。16、int a10=1,2,3,4; a4=。17、C程序构成的基本单位是 。18、函数的参数有两种: 和。四、程序填空1、下面

21、程序将两个数从小到大的顺序输出,试填充空格以完善程序。#include<stdio.h>void main()float a,b,;scanf("%f%f",&a,&b);if(a>b)t=a;b=t;printf("%5.2f,%5.2fn",a,b);2、输入三个数,按从小到大的顺序输出。main() float a,b,c,t;scanf( %f,%f,%f ",); /*分别输入要比较的三个数*/ if(a>b)t=a; a=b; ;if(a>c)t=a; ; c=t; if() t=b;

22、b=c; c=t; printf( %5.2f, %5.2f, %5.2f”,a,b,c);3、大小写字母的转换。main()char c1,c2;/*定义2个字符型变量*/c1=;/呱键盘上输入小写字符存放在变量c1中*/c2=; /*等小写转化成大写字符存放在变量c2中*/pirntf( %c,%c",); /*输出两个字符*/运行后,从键盘上输入b回车后执行结果为:4、输入圆的半径,求圆的周长和面积。/*定义符号常量PI,其值为3.14159*/main()float r,l,s;片输入圆的半径*/l=2*PI*r;/*求周长*/s=; /味面积*/ printf(半径为

23、63;周长=%f,面积=%匕r,l,s);5、打印出所有的“水仙花数”,水仙花数是指一个3位数,其各位数字的立方和 等于该数本身。例如,153=13+53+33 0main() int i,j,k,n;for(n=100;n<1000;n+) i=n/100; k=n%10;if ( ) printf("%4d",n); 6、求1+2+3+.+n的和,将以下程序补充完整。#include<stdio.h> void main()int n,i=1,sum=0; /输入n的值while() / 循环条件 /求和 i+;printf("sum=%dn

24、",sum); /输出结果 7、用下列程序计算n的阶乘,请填充空格以完善程序。#include<stdio.h> main()int i,n;long f;scanf("%d",&n); f=;for(i=1;i<=n;i+) f=;printf("n=%d,%d!=%ldn",n,n,f);8、判断m是否是素数。#include<stdio.h>#include<math.h>main()int m,k,i,n=0;scanf( %d",&m);k=sqrt(m);for(i

25、= 2;i<=k;i+)if(m%i=0) ;if(i>k)printf( m 是素数! n");elseprintf( m 不是素数! n");9、下面程序的功能是将一个字符串str的内容颠倒过来,请填空#include<stdio.h>#include<stdio.h>void main()int i,j,;char str= "student';i=0;j=Jwhile(ivj)k=stri;stri=strj;strj=k;i+;j-; puts(str);10、输入10个数,找出其中的最大值。#include<stdio.h>void main()Int i,max,a10;printf(请输入10个数:”);for(i=0;i<10;i+)scanf( %d",);max=a0;for(

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论