当前位置:文档之家› 计算机原理的试卷

计算机原理的试卷

1. 若以下选项中的变量已正确定义,则正确的赋值语句是。

A) x1=26.8%3; B) 1+2=x2; C) x3=0x12; D) x4=1+2=3;答案:C2. 设变量x为float型且已经赋值,则以下语句中能够将x中的数值保留到小数点后面两位,并将第三位四舍五入的是。

A) x=x*100+0.5/100.0 B) x=(x*100+0.5)/100.0C) x=(int)(x*100+0.5)/100.0 D) x=(x/100+0.5)*100.0答案:C3. 下列C语言中运算对象必须是整型的运算符是。

A) %= B) / C) = D) *=答案:A4. 若有以下程序段:int c1=1,c2=2,c3;c3=1.0/c2*c1;则执行后,c3中的值是。

A) 0 B) 0.5 C) 1 D) 2答案:A5. 设x和y均为int型变量,则以下语句:x+=y; y=x-y; x-=y; 的功能是。

A) 把x和y按从大到小排列 B) 把x和y按从小到大排列C) 无确定结果 D) 交换x和y中的值答案:D6. 下列变量定义中合法的是。

A)short_a=1-.le-1; B)double b=1+5e2.5;C)long do=0xfdaL; D)float 2_and=1-e-3;答案:A7. 以下4个选项中,不能被看作是一条语句的是。

A) {;} B) a=0,b=0,c=0;C) if (a>0); D) if (b==0)m=1;n=2;答案:D8. 设x=1,y=-1,下列表达式中解为8的是。

A)x&y B)~x│x C)x^x D)x<<=3答案:D9. 在C语言中不合法的整数是。

A)20 B)0x4001 C)08 D)0x12ed答案: C10. 以下选项中不正确的实型常量是A)2.607E-1 B)0.8103e0.2 C)-77.77 D)456e –2答案:B)11.若变量已正确定义并赋值,符合C语言语法的表达式是A)a=a+7 B)a=7+b+c,a++C)int(12.3%4) D)a=a+7=c+b答案:B)12.以下十六进制数中不合法的是A)oxff B)0Xabc C)0x11 D)0x19答案:A)13. 设int i=2,j=3,k=4,a=4,b=5,c=3;,则执行表达式(a=i<j)&&(b=j>k)&&(c=i,j,k)后,A)0 B)1 C)2 D)3答案:D14. 下列程序的运行结果是。

# include “stdio.h”void main( ){ int i=23;do{++i;}while(i);printf(“%d”,i);}A)23 B)24 C)死循环 D)无任何结果答案:C15.设int a=3,b=4,c=5;,下列表达式的值不为1的是。

A)a+b>c&&b==c B)a||b+c&&b-cC)!(a>b)&&!c||1 D)!(a+b)+c-1&&b+c/2答案:A16.下列不合法的常量是:。

(1)’?’(2)’abc’(3)”Turbo c”(4)’\0x32’(5)’\123’(6)’’’’(7)”△”(8)’△’(9)”\\\”(10)’’a’’’(11)’\\’(12)’\0123’(13)’\xaf’(14)’王’(15)”李为民”(16)”\xaif”答案:(2),(12),(14),(16)17. 下列运算符中,结合方向为自左向右的是()。

(A)?:(B),(C)+ = (D)+ +答案:(B)18. 若有float x;则sizeof (x)和sizeof (float)两种描述()。

(A)都正确(B)都不正确(C)前者正确(D)后者正确答案:(A)19. 有整型变量x,单精度变量y=5.5,表达式x=(float)(y*3+((int)y)%4)执行后,x的值为()。

(A)17 (B)17.500000 (C)17.5 (D)16答案:(A)20. 若给定条件表达式(M)?(a++):(a--),则其中表达式(M)。

A.和(M==0)等价 B.和(M==1)等价C.和(M!=0)等价 D.和(M!=1)等价答案:C21. 已知float x=1,y;则y=++x*++x的结果是。

A.y=9 B.y=6 C.y=1 D.表达式是错误的答案:D22. 以下程序的输出结果是。

short i=65535; printf ("%d\n",i);A.65535 B.0C.语法错误,无输出结果 D.-1答案:D23.有变量说明语句int a,b ,c;,顺序执行下面语句:a=b=c=1;++a||++b&&++c;那么,变量b的值应是()A.2 B.1 C.0 D.3答案:B24. 有变量说明int a=3;,则表达式a<1&&--a>1的运算结果和a的值应该是()A.0和2 B.0和3 C.1和2 D.1和3答案:B25. 以下程序的输出为。

#include<stdio.h>void main( ){double x=213.82631;printf("%-6.2e\n",x);}A.213.82 B.21.38e+01 C.2.14e+02 D.-2.14e2答案:C26. 下列关于单目运算符+ +、- -的叙述中正确的是。

A)它们的运算对象可以是任何变量和常量B)它们的运算对象可以是char型变量和int型变量,但不能是float型变量C)它们的运算对象可以是int型变量,但不能是double型变量和float型变量D)它们的运算对象可以是char型变量、int型变量和float型变量答案:D27. 有以下程序:#include <stdio.h>void main ( ){char a,b,c,*d;a='\';b='\xbc';c='\0xab';d="\0127";printf ("%c%c%c%c\n",a,b,c,*d);}编译时出现错误,以下叙述中正确的是。

A)程序中只有“a='\';”语句不正确B)“b='\xbc';”语句不正确C)“d="\0127";”语句不正确D)“a='\';”和“c='\0xab';”语句都不正确答案:D28. 有以下程序:#include <stdio.h>void main ( ){int a=1,b=2,m=0,n=0,k;k=(n=b>a)||(m=a<b);printf ("%d,%d\n",k,m);}程序运行后的输出结果是。

A)0,0 B)0,1 C)1,0 D)1,1答案:C29. 已定义ch为字符型变量,下列赋值语句中错误的是。

A)ch='\'; B)ch=62+3; C)ch=NULL; D)ch='\xaa';答案:A30. 以下4个选项中,不能看作一条语句的是。

A){;} B)a=0,b=0,c=0;C)if (a>0); D)if (b= =0)m=1;n=2;答案:D31. 假定有以下变量定义,则能使值为3的表达式是。

int k=7,x=12;A)x%=(k%=5) B)x%=(k-k%5)C)x%=k-k%5 D)(x%=k)-(k%=5)答案:D32. 以下程序的输出结果是。

#include <stdio.h>void main( ){int x=3,y=2,z=1;printf ("%s=%d\n", "x/y&z",x/y&z);printf ("%s=%d\n", "x^y&~z", x^y&~z);}A)x/y&z=0 B)x/y&z=1x^y&~z =0 x^y&~z =0C)s=x/y&z=0 D)x/y&z=1s=x^y&~z =1 x^y&~z =1答案:D33. 设有“int x=11;”则表达式(x++*1/3)的值是。

A)3 B)4 C)11 D)12答案:A34. 若有语句scanf(”%d %c%f”,&a,&b,&c),假设输入序列为2223a123o.12,a、b、c的值为。

A)无值 B)2223,a,123o.12C)2223,a,无 D)2223,a,123答案:D35. 下列描述中,正确的一条是。

A)C语言的整型变量可以分为int 、short、long、unsigned int、unsigned short、unsigned long等几种类型,因此整型常量也可以分为这几种类型B)C语言的字符数据与整型数据可以互相赋值C)若对字符型变量的定义为:“char c;”可使用语句c=“a”对变量c赋值D)已知x为float型,执行语句(int)x后,x为int型答案:B36. 设“int x=1,y=1;”,表达式(!x‖y--)的值是。

A)0 B)1 C)2 D)-1答案:B37. 执行x=5>1+2&&2||2*4<4-!0后,x的值为。

A)-1 B)0 C)1 D)5答案:C38. 语句“printf ("%d ", (a=2)&&(b=-2));”的输出结果是。

A)无输出 B)结果不确定 C)-1 D)1答案:D39. 设a=2、b=3、c=4,则表达式a+b>c&&b= =c&&a||b+c&&b+c的值为。

A)5 B)8 C)0 D)1答案:D40. 执行语句scanf (“%c%c%c”,&c1,&c2,&c3),输入abc时,变量c1、c2、c3的值分别为。

A)'a', 'b', 'c' B)'a','b', ''C)'a', '', 'b' D)'a','','c'答案:A41. 若有以下定义:int a=10,b=9,c=8;顺序执行下列语句后,变量b中的值是。

c=(a -= (b-5));c=(a%11)+(b=3);A)3 B)8 C)9 D)10答案:A42. 有以下程序段:int m=0,n=0;char c='a';scanf("%d%c%d",&m,&c,&n);printf("%d,%c,%d\n",m,c,n);若从键盘上输入:10A10<回车键>,则输出结果是。

相关主题