二级C语言分类模拟题564
选择题
1、有以下程序
#include <stdio.h>
void fun(char *t,char *s)
{ while(*t!=0) t++;
while((*t++=*s++)!=0);
}
main()
{ char ss[10]="acc",aa[10]="bbxxyy";
fun(ss,aa); printf("%s,%s\n",ss,aa);
}
程序的运行结果是______。
A.accbbxxyy,bbxxyy B.acc,bbxxyy C.accxxyy,bbxxyy D.accxyy,bbxxyy
2、在下述程序中,判断i>j共执行的次数是______。
main()
{int i=0,j=10,k=2,s=0;
for(;;)
{i+=k;
if(i>j){printf("%d",s);break;}
s+=i;}}
A.4 B.7 C.5 D.6
3、数据库系统的核心是______。
A.数据模型 B.数据库管理系统
B.数据库 D.数据库管理员
4、运行下列程序时,若输入数据为“321”,则输出结果是______。
main()
{ int num,i,j,k,s;
scanf("%d",&num);
if(num>99)
s=3;
else if(num>9)
s=2;
else
s=1;
i=num/100;
j=(num-i*100)/10;
k=(num-i*100-j*10);
switch(s)
{ case 3:printf("%d%d%d\n",k,j,i);
break;
case 2:printf("%d%d\n",k,j);
case 1:printf("%d\n",k);
}
}
A.123 B.1,2,3
C.321 D.3,2,1
5、以下程序的输出结果是______。
#include<stdio.h>
int m=13;
int fun(int x,int y)
{ int m=2;
return(x*y-m);
}
main()
{int a=7,b=6;
printf("%d",fun(a,b)/m);
}
A.1 B.3 C.7 D.10
6、 以下叙述中正确的是______。
A. 用C语言实现的算法必须要有输入和输出操作
B. 用C语言实现的算法可以没有输出,但必须要有输入
C. 用C程序实现的算法可以没有输入,但必须要有输出
D. 用C程序实现的算法可以既没有输入,也没有输出
7、有以下程序段:
char name [20];
int num;
scanf("name=%s num=%d",name,&num);
当执行上述程序段,并从键盘输入:name=Lili num=1001<回车>后,name的值为______。
A.name=Lili num=1001 B.name=Lili
C.Lili nun= D.Lili
8、若有以下说明和定义:
#include<stdio.h>
main()
{ int(*a)(int*), *b(), w[10], c;
}
int fun(int*c){…}
则以下选项中能正确调用fun函数是
A.a=fun; a(w); B.a=fun; (*a)(&c); C.b=fun; *b(w); D.fun(b);
9、以下定义数组的语句中错误的是______。
A.int num[]={1,2,3,4,5,6}; B.int num[][3]={{1,2},3,4,5,6};
C.int num[2][4]={{1,2},{3,4},{5,6}}; D.int num[][4]={1,2,3,4,5,6};
10、以下函数实现按每行8个输出w所指数组中的数据
#include <stdio.h>
void fun(int *w,int n)
{ int i;
for(i=0;i<n;i++)
{ ____________
printf("%d",w[i]);
}
printf("\n");
}
在横线处应填入的语句是______。
A.if(i%8==0) printf("\n"); B.if(i/8==0) continue;
C.if(i/8==0) printf("\n"); D.if(i%8==0) continue;
11、有如下程序段:
int x=12;
double-y=3.141593;
printf("%d%8.6f",x,y);
其输出结果是______。
A.123.141593 B.12 3.141593 C.12,3.141593 D.123.1415930
12、以下程序段中,与语句:
k=a>b?(b>c?1:0):0;
功能相同的是______。
A.if((a>b)&&(h>c))k=1;
else k=0;
B.if((a>b)||(b>c))k=1;
else k=0;
C.if(a<=b)k=0;
else if(b<=c)k=1;
D.if(a>b)k=1;
else if(b>c)k=1;
else k=0;
13、下列关系运算的叙述中,正确的是 ( )
A. 投影、选择、连接是从二维表行的方向进行的运算
B. 并,交、差是从二维表的列的方向来进行运算
C. 投影、选择、连接是从二维表列的方向进行的运算
D. 以上3种说法都不对
14、有以下程序
#include<stdio.h>
main()
{
struct STU{char name[9];char sex;double score[2];};
struct STU a={"Zhao",'m',85.0,90.0},b={"Qian",'f',95.0,92.0};
b=a;
printf("%s,%c,%2.0f,%2.0f\n",b.name,b.sex,b.score[0],b.score[1]);
}
程序的运行结果是______。
A.Zhao,m,85,90 B.Qian,m,85,90 C.Zhao,f,95,92 D.Qian,f,95,92
15、下列叙述,正确的是______。
A.算法的效率只与问题的规模有关,而与数据的存储结构无关
B.算法的时间复杂度是指执行算法所需要的计算工作量
C.数据的逻辑结构与存储结构是一一对应的
D.算法的时间复杂度与空间复杂度一定相关
16、设有定义:
int a=1, b=2, c=3;
以下语句中执行效果与其它三个不同的是______。
A.if(a>b)c=a; a=b; b=c; B.if(a>b){c=a, a=b, b=c;}
C.if(a>b)c=a, a=b, b=c; D.if(a>b){c=a; a=b; b=c;}
17、设a=1,b=2,c=3,d=4,则表达式:“a<b?a:b<b?a:c<d?a:d”的结果为______。
A.4 B.3
C.2 D.1
18、有以下程序:
#include<stdio.h>
#include<stdlib.h>
int fun(int n)
{int *p;
p=(int *)malloc(sizeof(int));
*p=n; return *p;
}
main()
{int a;
a=fun(10); printf("%d\n", a+fun(10));
}
程序的运行结果是______。
A.10 B.20 C.0 D.出错
19、以下叙述正确的是______。
A.EOF只能作为文本文件的结束标志,其值为-1
B.EOF可以作为所有文件的结束标志
C.EOF只能作为二进制文件的结束标志
D.任何文件都不能用EOF作为文件的结束标志
20、以下程序的输出结果是______。
#include <stdio.h>
main()
{ int a[3][3]={{1,2}, {3,4}, {5,6}}, i, j, s=0;
for(i=1; i<3; i++)
for(j=0; j<i; j++)s+=a[i][j];
printf("% d\n", s);
}
A.14 B.19 C.20 D.21
21、有下列程序:
#include<stdio.h>
printf函数的作用是向终端#define PT 3.5;
#define S(x)PT*x*x;
main()
{int a=1,b=2;printf("%4.1f\n",S(a+b));}
程序运行后的输出结果是( )。
A.14.0 B.31.5
C.7.5 D.程序有错无输出结果
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论