当前位置:首页 > 福建省2010年12月真题C语言(含答案)
0124、以下叙述正确的是( )。
A.注释部分可单独占用一行,也可跟在语句的后面 B.函数体定界符也可用一对方括号\C.C语言源程序每一行就是一条语句
D.由于C语言源程序都是从main()函数开始执行,所以main()函数必须位于程序文件最前面 0125、下面叙述错误的是( )。
A.所有语句都必须以分号\结束 B.语句是构成C语言源程序的基本单位 C.C语言源程序必须包含一个main()函数 D.注释部分在程序编译和运行时不起作用 0126、main()函数的位置( )。 A.必须位于程序文件的最前面 B.必须位于用户自定义函数的前面
C.可位于用户自定义函数之前,也可位于用户自定义函数之后 D.必须位于用户自定义函数的后面
0127、( )是结构化程序设计应遵循的原则。 A.选用的控制结构可有多个入口和一个出口 B.根据需要可使用嵌套基本控制结构表示程序逻辑
C.应使用顺序、选择、循环三种基本控制结构表示程序逻辑 D.为提高程序效率,应尽量使用Goto语句
0128、描述一个算法可以有不同的方式,常见的有( )。 A.汇编语言、高级语言和低级语言 B.自然语言、流程图和伪代码 C.机器语言、汇编语言和高级语言 D.高级语言、自然语言和伪代码 0224、下列不属于C语言数据类型的是( )。 A.双精度型 B.枚举类型 C.复数类型 D.长整型 0225、下列合法的浮点数的是( )。 A..65 B.E2 C.2E0.5 D.123
0226、下列不合法的字符常量的是( )。 A.'\\t' B.'\\n' C.'\\\\' D.\0227、下列( )是不正确的常量形式。 A.'x5' B.1.6E6 C.1E-2 D.\0228、下列( )是不合法的用户标识符。 A._f6 B.div C.5x D._num
0324、若已定义:int n=2; double x=2.5; 则下列表达式中不符合语法的是( )。 A.(int)x%n B.(int)(x%n) C.(int)(x/n) D.(int)x/n
0325、若已定义:long int i; char c; double x; 则表达式i*c+(int)x结果的类型是( )。 A.int B.char C.double D.long int
0326、若已定义:int x=3,y=2;则下列不正确的赋值表达式是( )。 A.x=2, y=2; B.x-y=1; C.x-=x+=y; D.x=y+2
0327、若已定义:int x; 则逗号表达式x=5,3+x,x=x*2的值是( )。 A.16 B.10 C.5 D.15
0328、对应代数式3a÷(b+c),C语言的表达式是( )。 A.3*a/b+c B.3*a\\(b+c) C.3a/(b+c) D.3*a/(b+c)
0424、若已定义:int x=2,y=3; 则执行语句y=x+++(--y);后,y的值为( )。 A.3 B.6 C.5 D.4
0425、若已定义:int i=2,j=2; float x=2.5,y=3.5; 则表达式(float)(i+j)/2+(int)x%(int)y
的值为( )。
A.4.5 B.4.0 C.3.5 D.3.0
0426、若已定义:int x=2,y; 则逗号表达式 y=3,x+=x+(++y)%x的值是( )。 A.2 B.3 C.4 D.5
0427、若已定义:double x,y; 则下列表达式不能正确计算(x-2)/3*y的是( )。 A.y/3*(x-2) B.(x-2)*y*1/3 C.y*(x-2)/3 D.(1/3)*(x-2)*y
0428、若已定义:int x=2,y; 则执行语句 y=x%2+(--x); 后y的值是( )。 A.0 B.1 C.2 D.3
0524、若已定义:char c; 则下列正确的输入语句是( 无答案 )。 A.gets(c); B.scanf(\
0525、若已定义:double x; 则exp(x)+sqrt(x)/2所表示的数学式是( 无答案 )。 A.公式(1) B.公式(2) C.公式(3) D.公式(4)
0526、若已定义:int x=5,y=7; 正确实现输出形式:5+7=12 的语句是( B )。 A.printf(\C.printf(\
0527、若已定义:double x=2.5; 则求x的平方的正确的函数调用是( )。 A.pow(x,2) B.sqrt(x) C.rand(2,x) D.exp(x)
0528、要使用以下程序段给三个整变量x1,x2,x2分别赋值1,2,3,正确的数据输入格式是( )。int x1,x2,x3;scanf(\ A.1 2 3 B.1,2,3 C.123 D.1 2 3
0624、若已定义:int x=2,y=3; 则下列表达式值为假的是( D )。 A.x>y||x 0625、若已定义:int a=0,b=1; 则下列表达式值为真的是( )。 A.a++&&b++ B.(a=0)&&(b=1) C.a==1||a!=1 D.a!=0||b!=1 0626、判断char型变量cl是否为小写字母的正确表达式为( )。 A.'a'<=c1<='z' B.(c1>='a')&&(c1<='z') C.('a'>=c1) && ('z'<=c1) D.(c1>=a)&&(c1<=z) 0627、下列当x的值在5至10之间为“假”,否则为“真”的逻辑表达式为( )。 A.x<=5 && x>=10 B.x>=5 && x<=10 C.!(5<=x<=10) D.!(5<=x && x<=10) 0628、若已定义:int x,y; 则下列不能正确表示数学关系式|x-y|>5的表达式是( )。 A.(x-y)>5||(x-y)<-5 B.abs(x-y)>5 C.(x-y)<-5 && (x-y)>5 D.(x-y)*(x-y)>25 0724、若已定义:int a=1,b=2,c=2; 则表达式 (a+b)/1.0/c的值是( )。 A.1.5 B.1 C.0.0 D.1.0 0725、若已定义:int x=11; double y=3.5; 则表达式 y/2+x%2/2的值是( )。 A.1.5 B.1.75 C.1.0 D.3.5 0726、下列四个运算符,按优先级别由高到低排列的是( )。 A.!、%、==、= B.%、!、==、= C.!、%、=、== D.!、=、%、== 0727、若已定义:double x=3,y; int z=2; 则语句y=(x+z)/2*z; 执行后,y的值为( )。 A.4.0 B.5.0 C.1.0 D.1.25 0728、若已定义:int x=2,y=4; 则表达式(double)x/y+y%x的值是( )。 A.2 B.0 C.0.5 D.2.5 0824、若已定义int k; 下列( )语句与其他三条语句不等价。 A.if(k) printf(\ else printf(\B.if(k==0) printf(\ else printf(\C.if(k!=0) printf(\else printf(\D.if(k==0) printf(\else printf(\ 0825、若已定义int k=4,s=10; 则下列程序段的运行结果是( )。 if (2*k>9) s=k+5; printf(\ A.10 B.14 C.19 D.13 0826、下列( D )不能当作一条语句。 A.if(k>0) m=1; else n=2; B.m=1,n=2,k=3; C.if(k>0); D.if(k==0) m=1; n=2; 0827、若已定义int x=5; 则下列程序段的运行结果是( )。 if ((x--)<5) printf(\ else printf(\ A.3 B.4 C.5 D.6 0828、下列程序段的运行结果是( )。 int k=8; switch(k%5) {default: printf(\ case 1: printf(\case 2: printf(\case 0: printf(\ A.CC B.AA C.DDAA D.DD 0924、下列程序段运行时,语句k+=2; 执行的次数是( )。 int i,k=0; for(i=7;i>3;i--,i--) k+=2; A.3 B.2 C.1 D.4 0925、若已定义: int i=5,m=1; 则( )语句不会产生无限循环。 A.for( ;i>0; i--) m+=3; B.while(i=1) m+=3; C.for( ;i<10; ) m+=3; D.do {m+=3; }while(i==5); 0926、循环语句的循环体中,continue语句的作用是( )。 A.继续执行continue语句之后的循环体各语句 B.结束本次循环,跳出循环体C.结束本次循环 D.立即终止程序运行 0927、下列程序段运行后m的值为( )。 int i,j,m=0; for(i=1;i<=3;i++) for(j=2;j<=4;j++) m=m+i+j; A.33 B.45 C.27 D.30 0928、下列程序段运行后sum的值为( )。 int i=8,sum=0; while((i--)>=5) {sum+=2; } A.10 B.8 C.6 D.4 1024、若已定义:int a[8],k=2; 无法正确引用数组a中元素的是( )。 A.a[8/k] B.a[8+k] C.a[8-k] D.a[0] 1025、下列叙述正确的是( )。 A.数组中每一个元素都属于同一个数据类型 B.定义数组时,若不加类型说明符则为整型 C.C语言中,数组长度在程序运行中可作动态调整 D.可利用数组名引用数组的第一个元素 1026、下列程序段的运行结果是( )。 int a[]={1,3,4,6,9},i,x=1; for(i=0;i<3;i++) x+=a[i+1]; printf(\ A.9 B.14 C.15 D.10 1027、下列程序段的运行结果是( )。 int a[ ]={8,7,6,5,4,3,2,1},i,sum=0; for(i=0;i<8;i++) if(i<=3) sum+=a[i]; else sum-=a[i]; printf(\ A.0 B.16 C.10 D.15 1028、下列程序段的运行结果是( )。 int a[ ]={0,1,2,3,4,5,6,7,8,9},i=0,t; while(i<=7) {t=a[i]; a[i]=a[i+2]; a[i+2]=t; i+=2; } for(i=0;i<10;i++) printf(\ A.0123456789 B.2143658709 C.2468013579 D.1357924680 1124、对二维数组arr初始化正确的是( )。 A.int arr[2][3]={{1,2},{3,4},{0}}; B.int arr[2][]={1,2,3,4,5}; C.int arr[2][3]={{1,2},{3,4}}; D.int arr[][]={{1},{3,4,5}}; 1125、下列程序段的运行结果是( )。 int arr[][4]={1,2,3,4,5,6,7,8,9,10,11,12}; printf(\ A.8 B.3 C.11 D.12 1126、若已定义:int a[ ][4]={{1,2},{3,4},{5,6,7},{8,9,10,11}}; 则a[2][2]的值为( )。 A.7 B.4 C.10 D.6 1127、下列程序段的运行结果是( )。 int a[3][3]={1,2,3,4,5,6,7,8,9},i; for(i=0;i<3;i++) printf(\ A.3 5 7 B.7 5 3 C.9 5 1 D.8 4 1 1128、二维数组元素在内存中的存放顺序是( )。 A.由用户自己定义 B.按列优先 C.按行优先 D.由编译器决定 1224、若已定义char stra[50],strb[50]; 能正确从键盘读入字符串的是( ) A.gets(strb,stra); B.scanf(\C.scanf(\ 1225、若已定义: char str1[20]=\能形成字符串\2010\的语句是( )。 A.strcpy(strupr(str1),str2); B.strcat(strupr(str1),str2);
共分享92篇相关文档