30.以下程序有语法错误,有关错误原因说法正确的是( )
main()
{ int G=5,k;
void prt_char();
…
k=prt_char(G);
…
}
A.语句void prt_char();有错,它是函数调用语句,不能用void说明
B.变量名不能使用大写字母
C.函数说明和函数调用语句之间有矛盾
D.函数名不能使用下划线
【参考答案】C
31.有以下程序:
#include <stdio.h>
union pw
{ int i;
char ch[2];}a;
main()
{a.ch[0]=13;a.ch[1]=0;printf(″%d\n″,a.i);}
程序的输出结果是( )
A.13 B.14 C.208 D.209
【参考答案】A
32.下面程序的运行结果是( )
#include <stdio.h>
main()
{ int a=1,b=10;
do
{b-=a;a++;}while(b--<0);
printf(″a=%d,b=%d\n″,a,b);
}
A.a=3,b=11 B.a=2,b=8 C.a=1,b=-1 D.a=4,b=9
【参考答案】B
33.有如下程序
long fib(int n)
{ if(n>2)return(fib(n-1)+fib(n-2));
else return(2);
}
main()
{ printf(″%d\n″,fib(3));}
该程序的输出结果是( )
A.2 B.4 C.6 D.8
【参考答案】B
34.函数rewind的作用是( )
A.使文件位置指针重新返回文件的开始位置
B.将文件位置指针指向文件中所要求的特定位置
C.使文件位置指针指向文件的末尾
D.使文件位置指针自动移至下一个字符位置
【参考答案】A
35.以下叙述中正确的是( )
A.构成C程序的基本单位是函数
B.可以在一个函数中定义另一个函数
C.main()函数必须放在其他函数之前
D.C函数定义的格式是K&R格式
【参考答案】A
36.有以下程序
void fun(int a,int b,int c)
{a=456,b=567,c=678;
main()
{int x=10,y=20,z=30;
fun(x,y,z);
printf(″%d,%d,%d\n″,x,y,z);
}
输出结果是( )
A.30,20,10 B.10,20,30
C.456,567,678 D.678,567,456
【参考答案】B
37.有以下程序
main()
{ char a[ ]={′a′,′b′,′c′,′d′,′e′,′f′,′g′,′h′,′\0′};int i,j;
i=sizeof(a);j=strlen(a);
printf(″ %d,%d\b″,i,j);
}
程序运行后的输出结果是( )
A.9,9 B.8,9 C.1,8 D.9,8
【参考答案】D
38.以下程序的运行结果是( )
#define MIN(x,y) (x)<(y)?(x):(y)
main()
{ int i=10,j=15,k;
k=10*MIN(i,j);
printf(″%d\n″,k);
}
A.10 B.15 C.100 D.150
【参考答案】B
39.设有以下说明语句
typedef struct
{ int n;
char ch[8];
} PER;
则下面叙述中正确的是( )
A.PER是结构体变量名
B.PER是结构本类型名
C.typedef struct是结构体类型
D.struct是结构体类型名
【参考答案】B
40.以下程序执行后a的值是( )
main()
{ int x,y=252,i=386,*m=&y,*z=&i;
x=(z==y);
printf(″%d″,x);
}
A.252 B.1 C.0 D.运行时出错,x无定值
【参考答案】C
41.下列程序的输出结果是( )
struct abc
{ int a,b,c,s;};
main()
{ struct abc s[2]={{1,2,3},{4,5,6}};int t;
t=s[0].a+s[1].b;
printf(″%d\n″,t);
}
A.5 B.6 C.7 D.8
【参考答案】Bwww.Examw.CoM
42.下列程序的运行结果是( )
void fun(int *a,int *b)
{int *k;
k=a;a=b;b=k;
}
main()
{int a=3,b=6,*x=&a,*y=&b;
fun(x,y);
printf(″%d %d″,a,b);
}
A.6 3 B.3 6 C.编译出错 D.0 0
【参考答案】B
43.若有下面的说明和定义,则sizeof(struct aa)的是值是( )
struct aa
{int r1;double r2;float r3;
union uu{char u1[5];long u2[2];}ua;
} mya;
A.30 B.29 C.24 D.22
【参考答案】D
44.以下选项中合法的用户标识符是( )
A.long B._2Test C.3Dmax D.A.dat
【参考答案】B
45.设x,y,t均为int型变量,执行下列语句后,y的值为( )
x=y=3;
t=++x||++y;
A.不确定 B.4 C.3 D.1
【参考答案】C
46.下列程序运行的结果是( )
main()
{
float x;
int i;
x=3.6;
i=(int)x;
printf(″x=%f,i=%d″,x,i);
}
A.x=3.600000,i=3 B.x=3.6,i=3
C.x=3,i=3 D.x=3.600000,i=3.000000
【参考答案】A
47.C语言中while和do-while循环的主要区别是( )
A.do-while的循环体至少无条件执行一次
B.while的循环控制条件比do-while的循环控制条件更严格
C.do-while允许从外部转到循环体内
D.do-while的循环体不能是复合语句
【参考答案】A
48.下面程序输出的结果是( )
main()
{
int i;
int a[3][3]={1,2,3,4,5,6,7,8,9};
for(i=0;i<3;i++)
printf(″%d″,a[2-i][i]);
}考试用书
A.1 5 9 B.7 5 3 C.3 5 7 D.5 9 1
【参考答案】B
49.下面函数的功能是( )
char *fun(char *strl,char*str2)
{
while((*str1)&&(*str2++=*str1++));
return str2;
}
A.求字符串的长度
B.比较两个字符串的大小
C.将字符串str1复制到字符串str2中
D.将字符串str1接续到字符串str2中
【参考答案】C
50.以下不能对二维数组a进行正确初始化的语句是( )
A.int a[2][3]={0};
B.int a[ ][3]={{1,2},{0}};
C.int a[2][3]={{1,2},{3,4},{5,6}};
D.int a[ ][3]={1,2,3,4,5,6};
【参考答案】C
二、填空题
1.数据结构分为逻辑结构与存储结构,线性链表属于【1】。
【参考答案】
【1】 存储结构
2.耦合和内聚是评价模块独立性的两个主要标准,其中【2】反映了模块内各成分之间的联系。
【参考答案】
【2】 内聚(www.Examw.com)
3.数据库设计分为以下6个设计阶段:需求分析阶段、【3】、逻辑设计阶段、物理设计阶段、实施阶段、运行和维护阶段。
【参考答案】
【3】 数据库概念设计阶段
4.Jackson结构化程序设计方法是英国的M.Jackson提出的,它是一种面向【4】的设计方法。
【参考答案】
【4】 数据结构
5.软件设计模块化的目的是【5】。
【参考答案】
【5】 降低复杂性
6.下列程序的输出结果是【6】。
main()
{ char b[ ]=″Hello you″;
b[5]=0;
printf(″%s\n″,b);
}
【参考答案】
【6】 Hello
7.函数void fun(float *sn,int n)的功能是根据以下公式计算S,计算结果通过形参指针sn传回;n通过形参传入,n的值大于等于0。请填空。
S=∑〖DD(〗n〖〗i=0〖DD)〗〖SX(〗(-f)i〖〗2×i+1〖SX)〗
void fun(float *sn,int n)
{ float s=0.0,w,f=-1.0;
int i=0;
for(i=0;i<=n;i++)
{ f=【7】*f;
w=f/(2*i+1);
s+=w;
}
【8】=s;
}
【参考答案】
【7】 -1
【8】 *sn