首页>计算机等级考试>模拟试题>正文
2007年计算机二级C语言模拟试题(6)

www.zige365.com 2007-10-26 11:45:04 点击:发送给好友 和学友门交流一下 收藏到我的会员中心
(41)下面程序的输出结果是
struct st
{ int x;
int *y;
} *p;
int dt[4]={10,20,30,40};
struct st aa[4]={50,&dt[0],60,&dt[1],70,&dt[2],80,&dt[3]};
main()
{ p=aa;
printf("%d\n",++p->x);
printf("%d\n",(++p)->x);
printf("%d\n",++(*p->y));}
A)10
20
20

B)50
60
21

C)51
60
21

D)60
70
31
正确答案:  C

(42)下面程序的输出结果是
#include
#include
main()
{char *p1="abc",*p2="ABC",str[50]= "xyz";
strcpy(str+2,strcat(p1,p2));
printf("%s\n",str);}
A)xyzabcABC
B)zabcABC
C)xyabcABC
D)yzabcABC
正确答案:  C

(43)以下程序的输出结果是
long fun( int n)
{ long s;
if(n==1||n==2)s=2;
else s=n-fun(n-1);
return s;}
main()
{ printf("%ld\n", fun(3)); }
A)1
B)2
C)3
D)4
正确答案:  A

(44)以下所列的各函数首部中,正确的是
A)void play(var :Integer,var b:Integer)
B)void play(int a,b)
C)void play(int a,int b)
D)Sub play(a as integer,b as integer)
正确答案:  C

(45)不合法的main函数命令行参数表示形式是
A)main(int a,char *c[])
B)main(int arc,char **arv)
C)main(int argc,char *argv)
D)main(int argv,char *argc[])
正确答案:  C

(46)有如下程序
main()
{char ch[2][5]={"6937","8254"},*p[2];
int i,j,s=0;
for(i=0;i<2;i++)p[i]=ch[i];
for(i=0;i<2;i++)
for(j=0;p[i][j]>′\0′;j+=2)
s=10*s+p[i][j]-′0′;
printf("%d\n",s);}
该程序的输出结果是
A)69825
B)63825
C)6385
D)693825
正确答案:  C

(47)以下程序的输出结果是
union myun
{struct
{ int x, y, z; } u;
int k;} a;
main()
{a.u.x=4; a.u.y=5; a.u.z=6;
a.k=0;
printf("%d\n",a.u.x);}
A)4
B)5
C)6
D)0
正确答案:  D

(48)以下程序的输出结果是
main()
{ char x=040;
printf("%o\n",x<<1);}
A)100
B)80
C)64
D)32
正确答案:  A

(49)C 语言中,系统的标准输入文件是指
A)键盘
B)显示器
C)软盘
D)硬盘
正确答案:  A

(50)下面的程序执行后,文件test中的内容是
#include
void fun(char *fname,char *st)
{ FILE *myf; int i;
myf=fopen(fname,"w" );
for(i=0;ifclose(myf);}
main()
{ fun("test","new world"); fun("test","hello,");}
A)hello,
B)new worldhello,
C)new world
D)hello, rld
正确答案:  A

二 、填空题
(1)在算法正确的前提下,评价一个算法的两个标准是 【1】 。
正确答案:  1.(时间复杂度和空间复杂度)

(2)将代数式 Z=x2+y2a+b 转换成程序设计中的表达式为 【2】 。
正确答案:  1.(SQR(x^2+y^2)/(a+b))

(3)软件危机出现于60年代末,为了解决软件危机,人们提出了 【3】 的原理来设计软件,这就是软件工程诞生的基础。
正确答案:  1.(软件工程学)

(4) 【4】 是数据库设计的核心。
正确答案:  1.(数据模型)

(5)在关系模型中,把数据看成一个二维表,每一个二维表称为一个 【5】 。
正确答案:  1.(关系)

(6)以下程序段的输出结果是【6】 。
int x=17,y=26;
printf ("%d",y/=(x%=6));
正确答案:  1.(5)

(7)关系表达式x正确答案:  1.((x(8)若有如下定义,double  a[100];则a数组元素的下标上限是【8】 。
正确答案:  1.(99)

(9)下面程序的输出结果【9】 。
main ()
{enum team {y1=4,y2,y3};
printf ("%d",y3);}
正确答案:  1.(6)

(10)把数学表达式  改写成C语言的表达式是【10】。
正确答案:  1.((cosx)*(cosx)*(m+n)/(m-n) )

(11)若有以下程序段:
int c1=1,c2=2,c3;
c3=1.0/c2*c1;
则执行后,c3中的值是【11】 。
正确答案:  1.(0)

(12) 若有以下定义:
char a;int b;
float c; double d;
则表达式a*b+d-c值的类型为【12】 。
正确答案:  1.(double或双精度型)

(13)设有代码"static int a[3][4]={{1}, {2}, {3}};",则a[1][1]和a[2][1]的值为【13】 。
正确答案:  1.(0  0)

(14)以下函数用来在w数组中插入x。n所指向的存储单元中存放w数组中字符个数。数组w中的字符已按从小到大的顺序排列,插入后数组w中的字符仍有序。请填空。
void fun(char *w, char x, int *n)
{  int i, p;
p=0;
w[*n]= x;
while(x > w[p])p++;
for(i=*n; i>p; i--)w[i]=【14】;
w[p]=x;
++*n;}
正确答案:  1.(w[i-1])

(15)设int a, b=10;执行a=b<<2+1;后a的值是【15】 。
正确答案:  1.(80)

(16)以下程序的输出结果是【16】。
main()
{ int x=100, a=10, b=20, ok1=5, ok2=0;
if(aelse if(ok2)x=10;
else x=-1;
printf("%d\n", x);}
正确答案:  1.(-1)

(17)以下程序的输出结果是【17】。
main()
{ int y=9;
for(; y>0; y--)
if (y%3==0)
{printf("%d", --y); continue;}
}
正确答案:  1.(852)

(18)以下函数的功能是【18】。
float av(a, n)
float a[];
int n;
{ int i; float s;
for(i=0, s=0; ireturn s/n;}
正确答案:  1.(求出数组元素平均值)

(19)以下程序的输出结果是【19】。
#define  PR(ar)printf("%d,",ar)
main()
{ int j, a[]={1, 3, 5, 7, 9, 11, 15}, *p=a+5;
for(j=3; j; j--)
switch(j)
{ case 1:
case 2: PR(*p++); break;
case 3:PR(*(--p));
}
printf("\n");
}
正确答案:  1.(9,9,11,)

(20)以下程序的功能是:处理由学号和成绩组成的学生记录,N名学生的数据已在主函数中放入结构体数组s中,它的功能是:把分数最高的学生数据放在h所指的数组中,注意:分数高的学生可能不只一个,函数返回分数最高学生的人数。请填空。
#include
#define  N  16
typedef  struct
{char num[10];
int  s ;
} STREC;
int  fun (STREC *a, STREC *b)
{int i,j=0,max=a[0].s;
for(i=0;iif(maxfor(i=0;iif(【20】)b[j++]=a[i];
return j;
}
main ()
{STREC  s[N]={{ "GA005",85},{"GA003",76},{"GA002",69},{"GA004",85},
{"GA001",91},{"GA007",72},{"GA008",64},{"GA006",87},
 {"GA015",85},{"GA013",91},{"GA012",64},{"GA014",91},
{"GA011",66},{"GA017",64},{"GA018",64},{"GA016",72}
};
STREC h[N];
int i, n;FILE *out;
n=fun(s,h);
printf("The %d highest score :\n",n);
for (i=0; iprintf("%s M\n ",h[i].num,h[i].s);
printf("\n");
out=fopen("out15.dat", "w");
fprintf(out, "%d\n",n);
for(i=0; ifprintf(out, "M\n ",h[i].s);
fclose(out);
}
正确答案:  1.(max==a[i].s)

本新闻共2页,当前在第2页  1  2  

我要投稿 新闻来源: 编辑: 作者:
相关新闻
2007年计算机二级VB模拟试题及答案(12)
2007年计算机二级VB模拟试题及答案(3)
2007年计算机等级考试二级C++模拟试题(1)
2007年计算机二级C语言模拟试题(8)
2007年计算机二级C语言模拟试题(7)