当前位置:首页 > 2007-2011计算机二级C语言考试真题及答案
Strcpy(a.name,b.name); a.sex=b.sex;
for(i=0;i<2;i++) a.score[i]=b.score[i]; retum a; } main()
{STU c={“Qian”,?f?,95.0,92.0}d;
d=f(c); printf(“%s,%c,%2.of,%2.of﹨n”,d.name,d.sex,d.score[0].d,score[1]); }
程序的运行结果是
A)Qian,f,95,92 B)Qian,m,85,90 C)Zhao,m,85,90 D)Zhao,f,95,92 (47)设有以下定义 Union data
{ int dl; float d2; }demo; 则下面叙述中错误的是
A)变量demo与成员d2所占的内存字节数相同 B)变量demo中各成员的地址相同 C)变量demo和各成员的地址相同
D)若给demo.d1赋99后,demo.d2中的值是99.0 (48)有以下程序
#include
{ int a=1,b=2,c=3,x;
x=(a^b)&c; printf(“%d\\n”,x); }
程序的运行结果是 A)0
B)1
C)2
D)3
(49)读取二进制文件的函数调用形式为:fread(buffer, size,count,fp);其中buffer代表的是
A)一个文件指针,指向待读取的文件 B)一个整型变量,代表待读取的数据的字节数 C)一个内存块的首地址,代表读入数据存放的地址 D)一个内存块的字节数
(50)有以下程序
#include
9
{ FILE *fp; int a[10]={1,2,3,0,0},i;
fp=fopen(“d2.dat”.”wb”) fwrite(a,sizeof(int),5,fp) fwrite(a,sizeof(int),5,fpj); fclose(fp);
fp=fopen(“d2.dat”,”rb”); fread(a,sizeof(int),10,fp); fclose(fp);
for (i=0;i<10;i++) printf(“%d,”,a[i]); }
程序的运行结果是 A)1,2,3,0,0,0,0,0,0,0
B)1,2,3,1,2,3,0,0,0,0. D)1,2,3,0,0,1,2,3,0,0.
C)123,0,0,0,0,123,0,0,0,0,
二、填空题(每空2分,共40分)
请将每一个空的正确答案写在答题卡[1]至[20]序号的横线上,答在试卷上不得分。
(1)软件需求规格说明书应具有完整性、无歧义性、正确性、可验证性、可修改性等特性,其中最重
要的是 。
(2)在两种基本测试方法中, 测试的原则之一是保证所测模块中每一个独立路径至少要执行
一次。
(3)线性表的存储结构主要分为顺序存储结构和链式存储结构。队列是一种特殊的线性表。循环队列
是队列的 存储结构。
(4)对下列二叉树进行中序遍历的结果为 。
A D G C E F B H P (5)在E-R图中,矩形表示 。
(6)执行以下程序时输入1234567
#include
10
Main() { int a=1,b;
Scanf(“--”,&a,&b); printf(“%d %d\\n”,a,b)
}
(7)以下程序的功能是:输出a、b、c三个变量中的最小值。请填空。
#include
{ int a,b,c,t1,t2;
Scanf(*%d%d%d”,&a,&b,&c); t1=a
(8)以下程序的输出结果是 。
#include
{ int n=12345,d;
while(n!=0){ d=n; printf(“%d”,d); n/=10; }
(9)有以下程序段,且变量已正确定义和赋值
for(S=1.0,k=1;k<=n;k++) s=s+1.0/(k*(k+)); printf(“S=%f\\n\\n”,s);
请填空,使下面程序段的功能与之完全相同 S=1.0;k=1;
While( ) { s=s+1.0/(k*(k+1)); ; } Printf(“s=%f\\n\\n”,s);
(10)以下程序的输出结果是 。
#include
for(i=a;j } (11)以下程序的输出结果是 。 #include 11 } Char *fun(char *t) { char *p=t; retrun (p+strlen(t)/2); } main() { char *str=”abcdefgh”; str=fun(str); puts(str); } (12) 以下程序中函数f的功能是在数值x的n个数(假定n个数互不相同)中找出最大最小数,将其 中最小的数与第一个数对换,把最大的数与最后一个数对换。请填空。 #include { if (x[m]>i) { i=x[m]; p0=m;} Else if(x[m] } t=x[p0]; x[p0]=x[n-1]; x[n-1]=1; t=x[p1]; x[p1]= ; =t; } main() { int a[10],u; for(u=0;u<10;u++) scanf(*%d,&a[u]); f(a,10); for(u=0;u<10;u++) printf(“%d”,a[u]); printf(“\\n”); } (13)以下程序统计从终端输入的字符中大写字母的个数,num[0]中统计字母A的个数,num[1]中统 计字母B的个数,其它依次类推。用#号结束输入,请填空。 #include { int num[26]={0},i; char c; 12
共分享92篇相关文档