2007年(春)笔试试卷 C程序设计

匿名网友 匿名网友 发布于: 2015-08-30 00:00:00
阅读 169 收藏 0 点赞 0 评论 0

21.以下关于C语言源程序的叙述中错误的是 。
A.一个C源程序由若干个函数定义组成,其中必须有且仅有一个名为main的函数定义
B.函数定义由函数头部和函数体两部分组成
C.在一个函数定义的函数体中允许定义另一个函数
D.在一个函数定义的函数体中允许调用另一个函数或调用函数自身
22.以下表示中不能用做C语言常量的是 。
A.0UL B.(long)123 C.1e0 D.’x2a’

23.以下标识符中不能用做变量名或自定义函数名的是 。
A.main B.scanf C._float D. sizeof
24.以下表示数学式“a=b)&&!(b>=c) D.!(a>=b Il b>=c)
25.以下程序运行后的输出结果是 。
A.2 2 B.7 2 C.7 5 D.6 2
main()
{ chat a[7]=”a0a0”;int i,j;
i=sizeof(a);j=strlen(a);printf(“%d%“,i,j);
}

26.下面关于循环语句for、while、do一while的叙述中正确的是 。
A.三种循环语句的循环体都必须放入一对花括号中
B.三种循环语句中都可以缺省循环终止条件表达式
C.三种循环语句的循环体都至少被无条件地执行一次
D.三种循环语句都可能出现无穷循环

27.以下程序段中有语法错误的是 。
A.fun(char aa[10])
{ while(*aa)printf(”%c”,*aa++);}
B.fun(char*aa)
{ while(aa[0])printf(”%c”,*aa++);}
C.main()
{ char*aa=”Hello!”:}
while(*aa)printf(”%c”,*aa++);
}
D.main()
{ char aa[10]=”Hello!”;}
while(*aa)printf(”%c”,*aa++);
}

28.若有声明“int a[]={1,2,3,4},*p,i;”,则以下程序段中不能输出13的是 。
A.for(i=0;i<4;i+=2)printf(”%d“,a[i]); B.for(p=0; p<4; p+=2)printf(”%d”,a[p]) ; C.for(p=a; pa B.(++ptr)->a
C.x[1].a D.x[0].b->a
struct ss
{ int a;struct ss*b;}x[3]={{5,&x[1]},{7,&x[2]},{9,0}},*ptr=&x[0];
30.若需要对一个数据文件abe.txt中的数据做加密处理并且限定只能做一次打开文件操作,则在“fp=fopen(”abc.txt”,模式字符串);”中,模式字符串应当是 。
A.“w+“ B.“r+“ C.“a+“ D.”r”

1.在声明局部变量时,不能使用的存储类别标识符是 。
2.与数学算式 等价的c语言表达式是

3.在以下程序的main函数中,语句“fun(x,10);”内的实参x表示数组x的 。
void fun(int a[10],int n)
{ int i;for(i=0;i<11;i++)a[i]++;} main() { int x[10]:{0};fun(x,10);} 4.已知程序中有声明“int a;long b;”,若需要接收从键盘输入的电话号码字符串(010)64782656(其中010是区号,64782656是电话号码),并将其中的区号、电话号码分别存储到变量a、b中,则实现该功能的输入语句应为“seanf(” ”,&a,&b);”。 5.若要使表达式p=”jiangsu”无任何错误(包括语法错误和警告错误),p的声明形式应为 。 6.以下程序运行后输出结果为 。 #include”stdio h” int a; int m(int a) { static int s;return(++s)+(--a); } void main() { int a=2;printf(”%d”,m(m(a))); } 7.以下程序运行后输出结果为 。 #include”stdio.h” enum days { mon=1,tue,wed,thu,fri,sat,sun}today=tue; void main() { printf(”%d”,(today+2)%7);} 8.以下程序运行后输出结果为 。 #include“stdio.h“ int mystery(int a,int b) { if(b==1)return a; else return a+mystery(a,b-1); } void main() { int x=5,y=3; printf(”%dn”, mystery(x,y)); } 9.以下程序运行后输出结果的第一行为 ,第二行为 。 #include“stdio.h“ void main() { int i=5; do { switch(i%2) { case 0:i--;break; case 1:i--;continue; } i--;printf(”%dn”,i); }while(i>0);
}

10.以下程序运行后输出结果的第一行为 ,第二行为 。
#include
int fun(int a[],int n,int b[])
{ int i=0,j,m=0,c,x;
for(i=0;i–n)i=j;
if(c==1)b[m++]=x;
else { b[m++]=-c;b[m++]=x; }
}
return m;
}

11.以下程序运行后输出结果的第一行为 ,第二行为 ,第三行为 。
#include”stdio.h”
#define N 3
main()
{ int a[N][N],b[N*N]={1,1},i,j;
for(i=2;i

评论列表