1、小学C语言基础试题小学C语言基础试题C语言基础试题一、单选题: 1、以下说法中正确的是( c) A. C语言程序总是从第一个的函数开始执行 B. 在C语言程序中,要调用的函数必须在main()函数中定义C. C语言程序总是从main()函数开始执行 D. C语言程序中的main()函数必须放在程序的开始部分 2、C语言可执行程序的开始执行点是( c) A. 程序中的一条可执行语句 B. 程序中第一个函数 C. 程序中的main函数 D. 包含文件中的第一个函数 3、C程序是( B) A. 顺序执行 B. 从Main函数开始 C. 从函数体开始 D. 任意语句 4、C语言程序的基本单位是_B_.
2、 A. 语句 B. 函数 C. 程序行 D. 字符 5、C语言程序由( C)组成 子程序 A. B. 过程 C. 函数 D. 主程序段程序 6、一个C程序的执行是从( A) A. 本程序的main函数开始,到main函数结束 B. 本程序文件的第一个函数开始,到本程序文件的最后一个函数结束 C. 本程序的main函数开始,到本程序文件的最后一个函数结束D. 本程序文件的第一个函数开始,到本程序main函数结束 7、以下叙述正确的是( C) A. 在C程序中,main函数必须位于程序的最前面 B. C程序的每行中只能写一条语句 C. C语言本身没有输入输出语句 D. 在对一个C程序进行编译的过程
3、中,可发现注释中的拼写错误 8、以下叙述不正确的是 D A. 一个C源程序可由一个或多个函数组成 B. 一个C源程序必须包含一个main函数 C. C程序的基本组成单位是函数 D. 在C程序中,注释说明只能位于一条语句的后面 9、C语言规定,在一个源程序中,main函数的位置(C) A. 必须在最开始 B. 必须在系统调用的库函数的后面 C. 可以任意 D. 必须在最后 10、一个C语言程序是由 B A. 一个主程序和若干子程序组成 B. 函数组成 C. 若干过程组成 D. 若干子程序组成 二、填空题: 1、函数体用_开始,用_结束。 2、C源程序的基本单位是_函数_ 3、一个C源程序中至少应
4、包括一个_MAIN函数_ 4、在一个C源程序中,注释部分两侧的分界符分别为_/*_和_*/_ 三、程序设计题:(这两个程序设计题上课讲过我就不做了,自己写吧) 1、编写一个C程序,输出以下信息: * Very good! * 2、编写一个程序,输入a,b,c三个值,输出其中最大者。 第2 章 程序设计的灵魂算法 一、单选题: 1、将三个数排序需要比较_B_次。 A. 2 B. 3 C. 4 D. 不确定 2、算法的表示方法有_A_。 A. 自然语言,传统流程图,N-S流程图,伪代码,计算机语言B. 高级语言,汇编语言,机器语言 C. C语言,QBASIC语言,InterDev D. 图形图像法
5、,描述法,编程法 二、问答题: 1、什么是结构化的算法,为什么要提倡结构化的算法, 2、算法有哪些特性, 3、什么叫算法,为什么要提倡结构化算法, 第3 章 数据类型、运算符和表达式 一、单选题: 1、设 int b=2;表达式b/(b*2)的值是_A_. A. 0 B. 0.5 C. 0.500000 D. 0.000000 2、设有如下定义: int a=1,b=2,c=3,d=4,m=2,n=2; 则执行表达式:(m= a d)后,m的值为_A_。 A. 1 B. 2 C. 3 D. 0 3、设有a=b=c=2,求表达式a+b+c+的结果是_A_。 A. 6 B. 9 C. 8 D. 表
6、达式出错 4、表示关系X =Y =Z的C语言表达式为_A_。 A. (X =Y)&(Y =Z) B. (X =Y)AND(Y =Z) C. (X =Y =Z)D. (X =Y)&(Y +1) B. int i=0,j=1;(j=1)?(i=1):(i=3) C. int i=1,j=1;i+=j+=2; D. int i=1,j=0;j=i=(i=3)*2); 6、表达式(a=3*5,a*5),a+5的值是多少(B ) A. 20 B. 80 C. 不能确定 D. 15 7、设有整型变量a,b,c,它们的初值是1运行表达式: +a|+b&+c后,a,b,c的值分别是:_A_。 (这个最好电脑上
7、通过一下) A. 2,1,1 B. 2,2,1 C. 1,2,1 D. 1,1,2 8、下面的表达式中_A_满足:当x为偶数时值为“真”,为奇数时值为“假” A. x%2=0 B. !x%2!=0 C. 2*x/2-x=0 D. !(x%2) 9、C语言的对语句中用作判断的表达式一般为_E_ A. 关系表达式 B. 逻辑表达式 C. 算术表达式 D. 逻辑表达式和关系表达式 E. 关系或逻辑表达式 10、若已定义x和y为double型,则表达式:x=1,y=x+3/2的值是(D ) A. 1 B. 2 C. 2.0 D. 2.5 11、若有以下定义: char a; int b; float
8、c;double d; 则表达式a*b+d-c值的类型为_D_. A. float B. int C. char D. double 12、以下定义和语句: char cl=b,c2=e; printf(,d,cn,c2,c1,c2,a,A); 则输出结果是:_B_. A. 2,M B. 3,E C. 2,E D. 输出项与对应的格式控制不一致,输出结果不确定 13、语句:printf(%d n,12&12);的输出结果是_B_. A. 12 B. 1 C. 24 D. 0 14、设A=3,B=4,执行 printf(%d,%d,(A,B),(B,A);的输出是_B_. A. 3,4 B. 4
9、,3 C. 3,3 D. 4,4 15、若x和y都是int型变量,x=100,y=200,且有下面的程序片段: printf(%d,(x,y); 上面程序片段的输出结果是 A A. 200 B. 100 C. 200 100 D. 输出格式符不够,输出不确定的值 16、表达式:10=9的值是_D_ A. true B. 非零值 C. 0 D. 1 17、请读程序: main() int A; float B, C; scanf(%2d%3f%4f,&A,&B,&C); printf(nA=%d,B=%f,C=%fn,A,B,C); 若运行时从键盘上输入9876543210(表示回车),则上面程
10、序的输出结果是 B A. A=98, B=765, C=4321 B. A=10, B=765.000000, C=4321.000000 C. A=98, B=765.0, C=4321.0 D. 以上答案都不正确 18、执行程序段char str20=a,b,c,o; int len=strlen(str); 变量len的值为( C) A. 20 B. 4 C. 3 D. 3或4或20 19、若x,i,j和k都是int型变量,则计算下面表达式后,x的值为 C x=(i=4,j=16.k=32) A. 4 B. 16 C. 32 D. 52 20、下列四组选项中,均不是C语言关键字的选项是
11、AA. define IF type B. getc char printf C. include scanf case D. while go pow 21、下列四个选项中,均是C语言关键字的选项是 B A. auto enum include B. switch typedef continue C. signed union scanf D. if struct type 22、C语言中的标识符只能由字母,数字和下划线三种字符组成,且第一个字符 C A. 必须为字母 B. 必须为下划线 C. 必须为字母或下划线 D. 可以是字母,数字和下划线中任一字符 23、下面四个选项中,均是不合法的
12、浮点数的选项是 BA. 160. 0.12 e3 B. 123 2e4.2 .e5 C. -.18 123e4 0.0 D. -e3 .234 1e3 24、已知各变量的类型说明如下: A int k,a,b; unsigned long w=5; double x=1.42; 则以下不符合C语言语法的表达式是 A. x%(-3) B. w+=-2 C. k=(a=2,b=3,a+b) D. a+=a-=(b=4)*(a=3) 25、以下不正确的叙述是 D A. 在C程序中,逗号运算符的优先级最低 B. 在C程序中,APH和aph是两个不同的变量 C. 若a和b类型相同,在计算了赋值表达式a=
13、b后b中的值将放入a中,而b中的值不变 D. 当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值 26、若有定义:int a=7;float x=2.5,y=4.7;则表达式x+a%3*(int)(x+y)%2/4的值是 A A. 2.500000 B. 2.750000 C. 3.500000 D. 0.000000 27、设变量a是整型,f是实型,i是双精度型,则表达式10+a+i*f值的数据类型为 C A. int B. float C. double D. 不确定 28、以下关于运算符优先顺序的描述中正确的是 C A. 关系运算符 算术运算符 赋值运算符 逻
14、辑运算符B. 逻辑运算符 关系运算符 算术运算符 赋值运算符C. 赋值运算符 逻辑运算符 关系运算符 算术运算符D. 算术运算符 关系运算符 赋值运算符 0; j=i=j; printf(%2d,%2dn,i,j); 1 0 k=!i=+j; printf(%2d, %2d, %2dn, i, j, k); 1 1 0 5、main( ) char st=A; int i=10; st=st+i;i=st%i; printf(%C,%dn,st,i); 已知字母A的ASCII码为65 结果:_K,5_ 6、假设所有变量均为整型,则表达式(a=2,b=5,a+,b+,a+b)的值为_9_ 7、C
15、语言中的标识符只能由三种字符组成,它们是_字母_,_数字_和_下画线_ 8、已知字母a的ASCII码为十进制数97,且设ch为字符型变量, 则表达式ch=a+8-3的值为_f_ 9、若x和y都是double型变量,且x的初值为3.0,y的初值为2.0,则表达式 pow(y,fabs(x)的值为_8.0_ 10、若有定义:int e=1,f=4,g=2; float m=10.5,n=4.0,k;则计算赋值表达式k=(e+f)/g+sqrt(double)n)*1.2/g+m后k的值是_13.7_ 第4 章 顺序程序设计 一、单选题: 1、输入一个华氏温度,要求输出摄氏温度。计算公式为: c=5
16、/9(F-32),以下程序正确的是(B) A. main() float c,F; scanf(%f,%f,&c,&F); c=5/9*(F-32); printf(摄氏温度是:%fn,c); B. main() float c,F; scanf(%f,%f,&c,&F); c=5*(F-32)/9; printf(摄氏温度是:%fn,c); C. main() float c,F; scanf(%f,%f,&c,&F); c=5%9*(F-32); printf(摄氏温度是:%fn,c); D. main() float c,F; scanf(%f,%f,&c,&F); c=5.0/9.0(
17、F-32); printf(摄氏温度是:%fn,c); 2、以下程序的输出结果是 C main( ) int a=12,b=12; printf(%d %dn,-a,+b); A. 10 10 B. 12 12 C. 11 13 D. 11 10 3、有如下程序 main0 int y=3,x=3,z=1; printf(%d %dn,(+x,y+),z+2); 运行该程序的输出结果是 D A. 3 4 B. 4 2 C. 4 3 D. 3 3 4、能正确表示逻辑关系:a ? =10或a ? 0的C语言表达式是 DA. a =10 or a =0|a =10 &a =0 D. a =10 5、
18、下列程序的输出结果是 C main() double d=3.2; int x,y; x=1.2; y=(x+3.8)/5.0; printf(%d n, d*y); A. 3 B. 3.2 C. 0 D. 3.07 二、填空题: 1、从键盘输入一个大写字母,要求改用小写字母输出,程序如下办 #include main( ) char c1,c2; (1)_scanf(“%c”,&c1);_; printf (%c,%dn,c1,c1 ); (2)_c2=c1+32;_; printf(%c,%dn,c2,c2); 2、以下程序不用第三个变量,实现将两个数进行对调操作: #include main() int a , b ; scanf (%d%d , &a , &b); printf(a=%d b=%dn , a , b ); a=(_a+b_); b=(_a-b_); a=(_a-b_); printf(
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1