《C语言程序设计试题及答案(6页).doc》由会员分享,可在线阅读,更多相关《C语言程序设计试题及答案(6页).doc(6页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、-C语言程序设计试题及答案-第 6 页 C语言程序设计一、选择题(共40分,每小题2分)1、以下叙述不正确的是(D )A、一个C源程序可由一个或多个函数组成B、一个C源程序必须包含一个main函数C、C程序的基本组成单位是函数D、在C程序中,注释说明只能位于一条语句的后面2、下列四个选项中,是不合法的用户标识符的选项是( B )A、abc B、12AC C、sun D、 A3、设有语句int a=4;则执行了语句a+=a- =a*a后,变量a的值是(A )A、-24 B、0 C、4 D、164、下列运算符中优先级最高的是( B )A、 B、+ C、& D、=5、在C语言中,运算对象必须是整型数
2、的运算符是( A )A、 B、 C、和 D、 +6、以下关于运算符的优先顺序的描述正确的是( C )A、关系运算符算术运算符赋值运算符逻辑与运算符B、逻辑与运算符关系运算符算术运算符赋值运算符C、赋值运算符逻辑与运算符关系运算符算术运算符D、算术运算符关系运算符赋值运算符逻辑与运算符7、在C语言中,如果下面的变量都是int类型,则输出的结果是( C )sum=pad=5;pAd=sum+,pAd+,+pAd;printf(“dn”,pad);A、7 B、6 C、5 D、48、x、y、z被定义为int型变量,若从键盘给x、y、z输入数据,正确的输入语句是( B )A、 INPUT x、y、z;
3、B、scanf(“%d%d%d”,&x,&y,&z);C、 scanf(“%d%d%d”,x,y,z); D、read(“%d%d%d”,&x,&y,&z);9、假定从键盘输入23456,下面程序的输出结果是:( C )void main ( ) int m,n;scanf(“%2d%3d”,&m,&n);printf(“m=%d n=%dn”,m,n);A、m=23 n=45 B、m=234 n=56 C、m=23 n=456 D、语句有错误10、若运行时,给变量x输入12,则以下程序的运行结果是( A )main( ) int x,y; scanf(“%d”,&x); y=x12?x+10
4、:x-12; printf(“%dn”,y);A、 0 B、 22 C、 12 D、1011、C语言中while和do-while循环的主要区别( A )A、do-while的循环体至少执行一次B、while 的循环控制条件比do-while的循环控制条件严格C、do-while允许从外部转到循环体内D、do-while的循环体不能是复合语句12、以下对二维数组的正确说明的语句是( C )A、int a3 B、float a(3,4) C、double a34 D、float a(3)(4)13、以下程序的输出结果是(C) main( ) int i,x33=1,2,3,4,5,6,7,8,9
5、; for (i=0;i3;i+) printf(“%d”,xi2-i);A、1,5,9 B、1,4,7 C、3,5,7 D、3,6,914、以下能对一维数组a进行正确初始化的语句是( C )A、int a10=(0,0,0,0,0); B、 int a10= ;C、int a10=0; D、 int a10=10 *1;15、以下程序执行后的输出结果是:( A )int fun( int a,int b,int c) a=456;b=567;c=678;void main( ) int x=10,y=20,z=30;z=fun(x,y,z);printf(“%d,%d,%dn”,z,y,x)
6、;A、30,20,10 B、10,20,30C、10,30,50 D、10,30,4016、以下说法正确的是(A)如果在一个函数中的复合语句中定义了一个变量,则该变量A、 只在该复合语句中有效B、 在该函数中有效C、 在本程序范围内有效D、为非法变量17、以下函数调用语句中含有的实参个数为(B )func(exp1,exp2,exp3),(exp4,exp5);A、1 B、2 C、4 D、518、在C语言程序中,以下说法正确的是( B )。A、函数的定义可以嵌套,但函数的调用不可以嵌套B、函数的定义不可以嵌套,但函数的调用可以嵌套C、函数的定义和函数的调用都不可以嵌套 D、函数的定义和函数的调
7、用都可以嵌套19、请读程序long fun5(int n)long s; if(n=1)|(n=2) s=2;else s=n+fun5(n-1);return (s);main( )long x; x=fun5(4); printf(%ldn”,x);上面的程序的运行结果是( A )A、9 B、 10 C、12 D、1820、若有下面的变量定义,以下语句中合法的是D )。int i,a10,*p;A 、p=a+2; B、p=a5; C 、p=a2+2; D、p=&(i+2);二、填空题(共20分,每空1分)1、若a是int型变量,且a的初值为6,则计算表达式a+=(b=4)+(c=2)后,a
8、的值为 12 。2、C语言中三种逻辑运算符为 & 、 |_、_!_ 。3、在C语言中,逻辑“真”值用 1 表示,逻辑“假”值用 0 表示。4、如a是int型变量,则计算表达式a=25/3%3后a的值为 2 。5、若a=1,b=4,c=3,则表达式!(abc的值是 0 。 7、常见的循环语句有 while 语句、do-while语句和 for 语句。8、若有定义:double x35;则x数组中行下标的下限为2_,列下标的下限为_4_。9、若有定义:int a34=1,2,0,4,6,8,10;则初始化后,a12得到的初值是_ _,a22得到的初值是 ,a02得到的初值是 。10、在C语言中,一
9、个函数由 函数头 和 函数体 两部分组成,函数体一般包括 声明 部分和 执行 部分。三、程序分析题(20分,每题5分)1、以下程序的输出结果是 852 main( )int y=10; for(;y0;y-) if(y%3=0) printf(“%d”,-y); continue;2、有以下程序段,若输入1298,则输出结果是 8921 main( ) int n1,n2; scanf(“%d”,&n2); while (n2!=0) n1=n2%10;n2=n2/10;printf(“%d”,n1);3、以下程序的输出结果是 d1=7 d2=5 #include “stdio.h” fun(
10、int b) int d=5; d+=b+; printf(“d1=%dn”,d); main( ) int a=2,d=3; Fun(a); d+=a+; printf(“d2=%dn”,d);4、以下程序的输出结果是 k=5 #include “stdio.h”f(int n)switch(g) case 0:return 0; case 1: case 2:return 1; return (f(g-1)+f(g-2);main( )int k;k=f(5);printf(“k=%d”,k);四、编程题.(共20分,每小题10分)1、编程求1+2+3+99+100.2、输入一同学成绩,判
11、断其成绩等级。 等级范围为: 90以上 等级为A 8980 等级为B 7970 等级为C 6960 等级为D 60以下 等级为EC语言程序设计参考答案一、选择题1-5 DBABA6-10CCBCA11-15ACCCA16-20ABBAD二、填空题1)、12 2)、& | ! 3)、1 04)、2 5)、1 6)、0 7)、while for8)、2 4 9)、0 8 0 10)、函数头 函数体声明 执行三、程序分析 1)、852 2)、8921 3)、d1=7 4)、k=5 d2=5四、编程1、#include main() int sum=0,i;for (i=1;i=100;i+)sum=
12、sum+I;printf(“1+2+100=%dn”,sum);2、 #include main() float score; scanf(“%f”,&score); switch (score/10) case 10: case 9: printf(“your score is An”); break; case 8: printf(“your score is Bn”);break; case 7: printf(“your score is Cn”);break; case 6: printf(“your score is Dn”);break; default: printf(“your score is En”);