【编程资格类考试】【C语言开发工程师】高频考点(21)
(1).以下选项中合法的字符常量是______。
A."B"正确答案B
B.'\010'
C.68
D.D
(2).假定X和Y为double型,则表达式X=2,Y=X+3/2的值是______。
A.3.500000正确答案D
B.3
C.2.000000
D.3.000000
(3).以下合法的赋值语句是______。
A.X=Y=100正确答案B
B.D--;
C.X+Y;
D.C=INT(A+B)
(4).t为int类型,进入下面的循环之前,t的值为0。
While(t=1)
{ ......}
则以下叙述中正确的是______。
A.循环控制表达式的值为0正确答案B
B.循环控制表达式的值为1
C.循环控制表达式不合法
D.以上说法都不对
(5).在调用函数时,如果实参是简单变量,它与对应形参之间的数据传递方式是______。
A.地址传递正确答案B
B.单向值传递
C.由实参传给形,再由形参传回实参
D.传递方式由用户指定
(6).以下函数值的类型是______。
Fun(float x)
{ float y;
Y=3*x-4;
Return y;
}
A.int正确答案A
B.不确定
C.void
D.float
(7).以下程序的输出结果是______。
Main()
{ char c='z';
Printf("%c",c-25);
}
A.a正确答案A
B.z
C.z-25
D.y
(8).假定int类型变量占用4个字节,若有定义:int x[10]={0,2,4};,则数组x在内存中所占字节数是______。
A.4正确答案D
B.12
C.20
D.40
(9).以下数组定义中不正确的是______。
A.int a[2][3];正确答案D
B.int b[][3]={0,1,2};
C.int c[100][100]={0};
D.int d[3][]={{1,2},{1,2,3},{1,2,3,4}};
(10).以下程序的输出结果是______。
Main()
{ int a[4][4]={{1,3,5},{2,4,6},{3,5,7}}; printf("%d%d%d%d\n",a[0][3],a[1][2],a[2][1],a[3][0]);
}
A.0650正确答案A
B.1470
C.5430
D.输出值不定
(11).以下选项中,不能正确赋值的是______。
A.char s1[10];s1="chest";正确答案A
B.char s2[]={'C','t','e','s','t'};
C.char s3[20]="Chest";
D.char *s4="Chest\n";
(12).以下程序的输出结果是______。
#define M(x,y,z) x*y+z
Main()
{ int a=1,b=2,c=3;
Printf("%d\n",M(a+b,b+c,c+a));
}
A.19正确答案D
B.17
C.15
D.12
(13).整型变量X和Y的值相等,且为非0值,则以下选项中结果为0的表达式是______。
A.X||Y正确答案D
B.X|Y
C.X&Y
D.X^Y
(14).下面的程序执行后,文件test.t中内容是______。
#include <stdio.h>
Void fun(char *fname,char *st)
{ FILE *myf; int i;
Myf=fopen(fname,"w");
For(i=0;i<strlen(st);i++)fputc(st[i],myf);
Fclose(myf);
}
Main()
{fun("test.t","new world"); fun("test.t","hello,");}
A.hello,正确答案A
B.new worldhello
C.new world
D.hello,rld
(15).结构化程序设计所规定的三种基本控制结构是______。
A.输入、处理、输出正确答案C
B.树形、网形、环形
C.顺序、选择、循环
D.主程序、子程序、函数
(16).有以下程序
#include <stdio.h>
Void WriteStr(char *fn,char *str)
{ FILE *fp;
Fp=fopen(fn,"w");
Fputs(str,fp);
Fclose(fp);
}
Main()
{
WriteStr("t1.dat","start");
WriteStr("t1.dat","end");
}
程序运行后,文件t1.dat中的内容是______。
A.start正确答案B
B.end
C.startend
D.endrt
(17).以下叙述中错误的是______。
A.C语言中对二进制文件的访问速度比文本文件快正确答案B
B.C语言中,随机文件以二进制代码形式存储数据
C.语句FILE *fp;定义了一个名为fp的文件指针
D.C语言中的文本文件以ASCII码形式存储数据
(18).有以下程序段
Typedef struct NODE
{int num; struct NODE *next;
}OLD;
以下叙述中正确的是______。
A.以上的说明形式非法正确答案C
B.NODE是一个结构体类型
C.OLD是一个结构体类型
D.OLD是一个结构体变量
(19).以下不能正确计算代数式 值的C语言表达式是______。
A.1/3*sin(1/2)*sin(1/2)正确答案A
B.sin(0.5)*sin(0.5)/3
C.pow(sin(0.5),2)/3
D.1/3.0*pow(sin(1.0/2),2)
(20).以下能正确定义且赋初值的语句是______。
A.int n1=n2=10;正确答案B
B.char c=32;
C.float f=f+1.1;
D.double x=12.3E2.5;
(21).以下程序的功能是:给r输入数据后计算半径为r的圆面积s,程序在编译时出错。
Main()
/* Beginning */
{int r; float s;
Scanf("%d",&r);
S=∏*r*r; printf("s=%f\n",s);
}
出错的原因是______。
A.注释语句书写位置错误正确答案D
B.存放圆半径的变量r不应该定义为整型
C.输出语句中格式描述符非法
D.计算圆面积的赋值语句中使用了非法变量
(22).有以下程序段
Int n,t=1,s=0;
Scanf("%d",&n);
Do{ s=s+t; t=t-2; }while (t!=n);
为使此程序段不陷入死循环,从键盘输入的数据应该是______。
A.任意正奇数正确答案D
B.任意负偶数
C.任意正偶数
D.任意负奇数
(23).设变量已正确定义,则以下能正确计算f=n!的程序段是______。
A.f=0; for(i=1;i<=n;i++) f*=i;正确答案D
B.f=1; for(i=1;i<n;i++) f*=i;
C.f=1; for(i=n;i>1;i++) f*=i;
D.f=1; for(i=n;i>=2;i--) f*=i;
(24).设有定义:int n1=0,n2,*p=&n2,*q=&n1;,以下赋值语句中与n2=n1;语句等价的是______。
A.*p=*q;正确答案A
B.p=q;
C.*p=&n1;
D.p=*q;
(25).设函数fun的定义形式为
Void fun(char ch,float x) { …… }
则以下对函数fun的调用语句中,正确的是______。
A.fun("abc",3.0);正确答案D
B.t=fun('D',16.5);
C.fun('65',2.8);
D.fun(32,32);
此题目数据由翰林刷题小程序免费提供
