c语言考试题12
第一篇:c语言考试题12
(1)指挥、协调计算机工作的设备是(D)。选择支:
A: 键盘、显示器 B: 存储器 C: 系统软件 D: 控制器
(2)用(B)编制的程序是边解释边执行。
选择支: A: C语言 B: BASIC语言 C: 汇编语言
D: 机器语言指令序列
(3)输入文字时有“插入”方式和“改写”方式,按(D)键可在这两种方式之间切换。选择支: A: Del键 B: 空格键
C: 只能使用鼠标 D: Ins
(4)下列设备中,属于输入设备的是(A)。选择支:
A: 鼠标器 B: 显示器 C: 打印机 D: 绘图仪
(5)数据总线用于各器件、设备之间传送数据信息,以下说法中(A)是错误 的。A、数据总线只能传输ASCII码
B、数据总线是双向总线
C、数据总线导线数与机器字长一致 D、数据总线通常是指外部总线
(6)存储1024个32×32点阵的汉字字形所需的存储容量是(D)KB。选择支: A: 125 B: 126 C: 127 D: 128
(7)有两个字符数组a、b,则以下正确的输入格式是 B__.A)gets(a,b);B)scanf(“%s%s”,a,b);
C)scanf(“%s%s”,&a,&b);D)gets(“a”), gets(“b”);
(8)若运行以下程序时,从键盘输入
3.6,2.4,(表示回车),则下面程序的运行结果是:B
#indude
下列数据中属于字符串常量的是abc# include
main()
{float x,y,z;
scanf(“%f%f”,&x,&y);
z=x/y;
while(1)
{if(fabs(z)>1.0){x=y;y=z;z=x/y;}
else break;}
printf(“%f”,y);}
A)1.5 B)1.6 C)2.0 D)2.4
(9)以下叙述中正确的是()A。
A)构成C程序的基本单位是函数
B)可以在一个函数中定义另一个函数 C)main()函数必须放在其它函数之前
D)所有被调用的函数一定要在调用之前进行定义
(10)执行下面程序后,输出结果是(A)。
main()
{ a=45,b=27,c=0;c=max(a,b);
printf(“%dn”,c);}
int max(x,y)int x,y;{ int z;
if(x>y)z=x;else z=y;return(z);}
A)45 B)27 C)18 D)72
(11)以下for循环的执行次数是:C
for(x=0,y=0;(y=123)&&(x<4);x++);
A)是无限循环 B)循环次数不定 C)执行4次D)执行3次
(12)语句while(!E)中的表达式!E等价于:A
A)E==0 B)E!=1 C)E!=0 D)E==1
(13)若x,i,j和k都是int型变量,则执行下面表达式后x的值为C
x=(i=4,j=16,k=32)
A)4 B)16 C)32 D)52
(14)下面四个选项中,均是不合法的用户标识符的选项是。C A)A B)float C)b-a D)一123 P_0 1a0 goto temp do 一A int INT(15)下列四组选项中,均不是C语言关键字的选项是A A)deFine B)getc C)include D)while IF char scanf go Type printf case pow
(16)下列运算符中优先级最低的是:A
A)?: B)&& c)+ D)!=
(17)下面程序的功能是把316表示为两个加
数的和,使两个加数分别能被13和11整除。请选择填空。B
#include
main()
{int i=0,j,k;
do{ i++;k=316-13*i;}
while(【1】);j=k/11;
printf(“ 316=13* %d+11*%d”,i,j);}
A)k/11 B)k%11 C)k/11==0 D)k%11== 0
(18)以下程序段的输出结果为(B)。
for(i=4;i>1;i--)for(j=1;j
(19)若有说明:int *p1,*p2,m=5,n;以下均是正确赋值语句的选项是(C)。A)p1=&m;p2=&p1 B)p1=&m;p2=&n;*p1=*p2;C)p1=&m;p2=p1;D)p1=&m;*p2=*p1;
(20)已知字符'A'的ASCⅡ代码值是65,字符变量c1的值是'A',c2的值是'D'.执行语句printf(“%d,%d”,c1,c2-2);后,输出结果是C A)A,B B)A,68 C)65,66 D)65,68
(21)以下数据中,不正确的数值或字符常量是(A)。A)c B)66 C)0xaa D)50
(22)下面是对s的初始化,其中不正确的是_D_.A)char s[5」={“abc”} B)char s[5]={'a','b','c'};
C)char s[5]=“" D)char s[5]=”abcdef“;
(23)下面程序(每行程序前面的数字表示行号)A
main()
{
int a[3]={3*0};
int i;
for(i=0;i<3;i++)scanf(”%d“,&a[i]);
for(i=1;i<3;i++)a[0]=a[0]+a[i]
printf(”%dn“,a[0]);
A)没有错误 B)第3行有错误
C)第5行有错误 D)第7行没有错误
(24)sizeof(float)是(B)。
A)一个双精度型表达式 B)一个整型表达式 C)一种函数调用
D)一个不合法的表达式
(25)若有说明:int a[3][4];则数组a各元
素C
A)可在程序的运行阶段得到初值0
B)可在程序的编译阶段得到初值0
C)不能得到确定的初值
D)可在程序的编译或运行阶段得初值0
(26)下面程序的运行结果是:D
#indude
main()
{int y=10;
do{y--;}
while(--y);
printf(”%dn“,y--);}
A)一1 B)1 C)8 D)0
(27)如果int a=2,b=3,c=0,下列描述正确的是B
A)a>b!=c和a>(b!=c)的执行顺序是一样的 B)!a!=(b!=c)表达式的值为1 C)a||(b=c)执行后b的值为0 D)a&&b>c的结果为假
(28)以下运算符中,优先级最高的运算符是
(C)。A)|| B)% C)!D)==
(29)阅读以下程序,当输入数据的形式为25,13,10正确的输出结果为:D
main()
{int x,y,z
scanf(”%d%d%d“,&x,&y,&z);
printf(”x+y+z=%dn ,x+y+z)。
}
A)x +y+z=48 B)x +y+z=35
C)x +z=35 D)不确定值
(30)下面程序段:D int t,x;for(t=1;t<=100;t++)
{scanf(“%d”,&x);
if(x<0)continue;
printf(“%3d”,t);}
A)当x<0时整个循环结束
B)x>=0时什么也不输出
C)printf函数永远也不执行
D)最多允许输出100个非负整数
(1)若定义了int *pointer[5],则表示定义了一个指向5个元素的一维数组的指针变量。错
(2)函数调用可以出现在执行语句中。对
(3)在定义函数中指定的形参变量,在未调用函数
时,并不占内存中的存储单元。对
(4)局部变量是静态存储变量。错
(5)C语言中,y=*p;其含义是将p的值赋给。对
(1)下面的程序中,函数fun的功能是:根据形参m,计算下面公式的值。
T=1+1/(1*2)+1/(2*3)+......+1/(m-1)*m
请改正程序中的错误,并运行改正后的程序。当从键盘输入70时,给出程序运行的正确结果(按四舍五入保留6位小数)。程序:
原程序:
#include double fun(int m){ double t=1.0;int i=2;
for(i=2;i<=m;i++)t+=1.0/(i*(i+1));return;}
main(){ int m;
printf(“n 输入整数: ”);scanf(“%d”, &m);
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论