加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

东北大学C语言期末考试题及答案(2)

(2009-12-15 18:44:31)
标签:

东北大学

c语言

考试

分类: 学习

1、若执行下面的程序时从键盘输入10,则输出是__B__ main( ) { int a; scanf(“%d”,&a); if(a++>10) printf(“%d\n”,++a); else printf("%d\n",a--); }
12 
11 
10 

2、执行下面程序段的结果是__D___ int x=0; do { printf(“%2d”,x--); }while(x);
打印出321 
打印出23 
不打印任何结果 
陷入死循环 

3、执行与句:for(n=0;n++<4; ); 后,变量n的值是__C__。



不定 

4、以下关于循环的描述中,错误的是__D___。
可以用for语句实现的循环一定可以用while语句实现 
可以用while语句实现的循环一定可以用for语句实现 
可以用do…while语句实现的循环一定可以用while语句实现 
do…while语句与while语句的区别仅仅是关键字while的位置不同 

5、下面的描述错误的是__C__。
函数可以有多个形式参数 
函数可以没有返回值 
函数内可以嵌套定义函数 
函数可以被其他函数调用 

6、函数返回值的类型是由__A__决定的。
定义函数时指定的返回类型 
函数中return语句的表达式类型 
主调函数的实际参数类型 
主调函数的返回值类型 

7、定义了一维int型数组a[10]后,下面错误的引用是__B__。
a[0]=1; 
a[10]=2; 
a[0]=5*2; 
a[1]=a[2]*a[0]; 

8、定义了int型二维数组a[6][7]后,数组元素a[3][4]前的数组元素个数为__B__。
24 
25 
18 
17 

9、下面语句中,错误的是__D__。
int i; int *p; p=&i; 
int i,*p; p=&a; 
int i,*p=&a; 
int i,*p; *p=i; 

10、 已知int型二维数组a[3][4],数组元素a[1][2]的地址不能表达为__C__。
&a[1][2] 
a[1]+2 
*a[1]+2 
*(a+1)+2 

11、C语言中,5种基本数据类型的存储空间长度的排列顺序为___A___。
char
char=int
char
char=int=long int<=float

12、假设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值是 ___B___。



13、若有说明语句:char c='\72';则变量c ___A___。
包含1个字符 
包含2个字符 
包含3个字符 
说明不合法,c的值不确定 

14、若x,y均定义为整型,z定义为double型,以下不合法的scanf函数调用语句是___C___。
scanf("%d%lx,%le",&x,&y,&z); 
scanf("%2d * %d%lf",&x,&y,&z); 
scanf("%x%*d%o",&x,&y,&z); 
scanf("%x%o%6.2f",&x,&y,&z); 

15、若输入字符串:abcde<回车>,则以下while循环体将执行___A___次。 while((ch=getchar())=='e') printf("*");
1次 
死循环 
0次 
5次 

16、执行下面的程序段后,k的值是___C___。 k=1;n=263; do{k*=n%10;n/=10;}while(n);

63 
36 

17、下面程序段中循环的执行次数是___B___。 a=10;b=0; do{b+=2;a-=2+b;}while(a>=0);
10 


18、下面程序段的运行结果是__D____。 x=2; do{printf("*");x--;}while(!x==0);

*** 
没有输出 
** 

19、下面程序段的运行结果是___B___。 i=1;s=1;a=0; do{a=a+s*i;s=-s;i++;}while(i<=10); printf("%d",a);

-2 

20、有如下程序 void main() { int a=2,b=-1,c=2; if(a) if(b<0) c=0; else c++; printf("%d\n",c); } 该程序的输出结果是___A___。



21、程序中对fun函数有如下说明 void fun(); 下面说明是错误的是___B___。
fun函数无返回值 
fun函数的返回值可以是任意的数据类型 
fun函数没有形式参数 
void 可以省略 

22、函数求sum(int n)的功能是计算自然数1到n的和,即1+2+…+n。 main() { printf("The sum=%d\n",sum (10)); } int sum(int n){ int s=0,i; for(i=0;i<=n;i++) _____B_____ } 请从备选答案中选择一答案,补全程序。
s=s+n; return s; 
s=s+i; return s; 
return s; 
return s+=i; 

23、 有以下程序 int f1(int x,int y){return x>y?x:y;} int f2(int x,int y){return x>y?y:x;} main() { int a=4,b=3,c=5,d=2,e,f,g; e=f2(f1(a,b),f1(c,d)); f=f1(f2(a,b),f2(c,d)); g=a+b+c+d-e-f; printf()__A___
4,3,7 
3,4,7 
5,2,7 
2,5,7 

24、若有说明:int a[][3]={1,2,3,4,5,6,7};则数组a第一维的大小是___B___。



无确定值 

25、判断字符串s1是否大于字符串s2,应当使用___D____。
if(s1>s2) 
if(strcmp(s1,s2)) 
if(strcmp(s2,s1)>0) 
if(strcmp(s1,s2)>0) 

26、当运行以下程序时,从键盘输入:AhaMA Aha<CR> <CR>表示回车,则下面程序的运行结果是___A____。 #include "stdio.h" main() { char s[80],c='a'; int i=0; scanf("%s",s); while(s[i]!='\0') { if(s[i]==c)
ahAMa 
AhAMa 
AhAMa ahA 
ahAMa ahA 

27、以下程序执行后a的值为___C____。  main( )   { int a,m=2, k=1, *p=&k;    a=p!=&m;    printf("%d\n",a);   }
-1 


28、以下能正确读入字符串的程序段是____C___。
char *p;scanf("%s", p); 
char str[10];scanf("%s", &str); 
char str[10], *p;p=str; scanf("%s", p); 
char str[10], *p=str;scanf("%s", p[1]); 

29、若有定义:int i, x[3][4];,则不能将x[1][1]的值赋给变量i的语句是___B___。
i=x[1][1]    
i=*(*(x+1)) 
i=*(*(x+1)+1)   
i=*(x[1]+1) 

30、下面程序的运行结果是____A___。 # include <stdio.h> # include <string.h> fun(char *s) { char t,*a,*z; a=s; z=s+strlen(s)-1; while(a++<z--) { t=*a++; *a=*z--; *z=t;} } main() { char *p; p="a
abdddfg 
afcdebg 
gbedcfa 
gfedcba 

31、用来描述C程序中注释的是__C___
/ / 
 
* * 

32、对于"xy\n\102\\\'"字符串的长度是__B___


12 
13 

33、已知:int x=10;执行语句x-=x+x;后x的值是__A___
-10 
10 
-20 
20 

34、下列描述中,正确的是__A___
所有的输入/输出都是通过调用库函数处理的 
所有的输入/输出都是通过输入/输出语句实现的 
getchar和putchar可以省略#include 
在输入/输出格式中的*表示跳过数据的含义 

35、设x=10,y=5;z=15,执行下面一段程序后z的结果是__C___ if(x>y) if(y>z)x=y; else z=y;



36、执行下面程序段的结果是__D___ int x=0; do { printf(“%2d”,x--); }while(x);
打印出321 
打印出23 
不打印任何结果 
陷入死循环 

37、以下关于switch语句和break语句的描述正确的是__D___
在switch语句中必须使用break语句 
break语句只能用于switch语句体中 
break语句只能用于循环语句中 
在switch语句中可以使用break语句 

38、与语句while(!x)等价的语句是__A___
while(x==0) 
while(x!=0) 
while(x!=1) 
while(~x) 

39、下面的描述错误的是__C___
 函数可以有多个形式参数 
 函数可以没有返回值 
 函数内可以嵌套定义函数 
 函数可以被其他函数调用 

40、 下面关于局部变量的描述中,错误的是__D___
 函数的局部变量的有效范围只能在本函数 
 函数的形式参数也是局部变量 
 局部变量的名称不能和函数同名称 
 不同的函数中不能定义相同名称的局部变量

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有