当前位置:首页 > 计算机语言(C)第1阶段测试题
江南大学现代远程教育 第一阶段测试卷
考试科目:《计算机语言(C)》第1章至第6章(总分100分) 时间:90分钟
学习中心(教学点) 批次: 层次: 专业: 学号: 身份证号: 姓名: 得分:
一、选择题(每题2分,共30分)
1.C语言程序由( )组成。
A. 子程序 B.过程 C.函数 D.主程序与子程序 2.当a的值为5,b的值为4时,逻辑表达式a<=6&&a+b>8的值为( )。 A. true B. false
C.非0整数值 D.整数值0
3. 下面四个选项中,均是不合法的用户标识符的选项是( )。 A. _A B. HAR C. b_a D. 1_23 P1 c3 INT do C_2 a2 er1 int 4.在c语言中,错误的语句是( )。
A. a=b=c; B. ; C. break D. b=3*5,a*=4;
5.设a、b和c都是int型变量,且a=3,b=4,c=5,则以下表达式中值为0的是 ( )。 A.a&&b B. a<=b C. a||b+c&&b-c D. !((a
printf(“%d,%u\\n”,x,x);
A.1, 1 B. –1,32767 C.–1,32768 D. –1,65535 7. 以下程序的运行结果是( )。 main() { int m=5;
if(m++>5) printf(“%d\\n”,m); else printf(“%d\\n”,m--);}
A.4 B.5 C.6 D.7
8. 设a为整型变量,初值为12,执行完语句a+=a- =a*=a后,a的值是( )。 A.-552 B.-120 C.-264 D. 0 9. 以下所列字符常量中,不合法的是( )。
A.'/Oxff' B.'\\65' C.'$' D.'\\xla'
10.以下不致造成死循环的语句是( )。 A.for(y=0,x=1;x>++y;x=i++) i=x; B.for(;;x+=i); C. while(x=8) x--;
D.for(i=10,sum=0;sum<=i;) sum=--i;
11. 执行以下程序段后,变量a,b,c的值为( )。 int x=11,y=10,a,b,c; a=(--x==y++)?--x:++y; b=x++; c=y;
A.a=10,b=10,c=9 B. a=9,b=9,c=12 C. a=9,b=9,c=11 D.a=1,b=9,c=11 12. 执行下列程序段后,变量i的值是( )。 int i=10; switch(i) { case 9:i+=1; case 10:i+=1; case 11:i+=1; default:i+=1; }
A.13 B.12 C.11 D.14 13.根据定义和数据的输入方式,输入语句的正确形式为( )。 已有定义:float f1,f2; 数据的输入方式:4.52 3.5
A. scanf(“%f,%f”,&f1,&f2); B. scanf(“%f%f”,&f1,&f2); C. scanf(“%3.2f %2.1f”,&f1,&f2); D. scanf(“%3.2f,%2.1f”,&f1,&f2); 14. 以下程序的输出是( )。 main( ) { int a=2,b=5;
printf(“a=%%d,b=%%d\\n”,a,b); }
A. a=2,b=5 B. a=%2,b=%5 C. a=%%d,b=%%d D. a=%d,b=%d 15. 设a和b为整型变量,执行以下语句:
b=(a=2+3,a*4),a+5;后a和b的值分别为( )。
A. 5,10 B. 20,25 C. 5,25 D. 5,20
二、填空题(每空3分,共45分)
1.break语句的功能 ,contitue语句的功能 。 2.字符串”\\\\\\?abcd\\123\\xAB\\t”的长度为 。 3.设x=2,y=3,表达式x=y==3运算后,其值是 。 4.设有 如下的说明:int I=3,j=5,m;
问:执行语句m=(I++)-(--j);后,m的值为 ,j的值为 。
5.设变量a是int型,f是float型,i是double型,则表达式10+?a?+i*f值的数据类型为 。
int x=0,y=0; do { y++; x*=x;
6.下述程序段的循环次数是 次,输出结果是 。
}while(x>0&&y>5) printf(“y=%d,x=%d”,y,x);
7.下程序的功能是用二分法求方程2x3-4x2+3x+6=0的根,并要求绝对值误差不超过0.001。 #include”math.h” main( )
{ float ab,a= 10.0,b=10.0,fab,fa,fb; fa=2*a*a*a+ 4*a*a+3*a+ 6; fb=2*b*b*b +4*b*b+3*b+ 6; do{ ab= ; fab=ab*((2*ab+ 4)*ab+3)+ 6; if(( )>0) { a=ab; fa=fab;} else
{ b=ab; fb=fab; } }while(fabs(fab)>= 1e-3 ); printf(“%d\\n”,ab); }
8.以下程序打印所有符合下列条件的3位正整数:是某一个数的平方数,其中有两位数字相同。如100、121等。 main( ) {int a,b,c,n,k; for(k=10;;k++)
{n= ;
if(n>999) ; a=n/l00; b= n0/10 ; c=n;
if(!((a-b)*(b-c)*(c-a)))printf(\ } }
9. 以下程序的功能是 #include
for(I=16;I<=1000;I++) {if(I!=0)continue; j++;
printf((j==4)?j=0,\ } }
10.#include “stdio.h” main()
{ char c;scanf(“%c”,&c); switch(c-?2?) {case 0:
case 1: putchar(c+4); case 2: putchar(c+4);break; case 3: putchar(c+3); default: putchar(c+2);break;} printf(“\\n”);}
当分别输入1,2,3,4,5时,输出为 。
三、编程题(共25分)
1.编程, 打印以下图形(10分) A B*B C***C D*****D
共分享92篇相关文档