2016年武汉科技大学855C语言程序设计考研真题(B卷).docxVIP

  • 31
  • 0
  • 约5.7千字
  • 约 10页
  • 2022-07-29 发布于上海
  • 举报

2016年武汉科技大学855C语言程序设计考研真题(B卷).docx

2016 年武汉科技大学 855C 语言程序设计考研真题(B 卷) (总分:150.00,做题时间:180 分钟) 一、选择题(总题数:10,分数:20.00) 以下定义语句中正确的是( )。(分数:2.00) int a=b=0; B.char a=65+1,b=b; √ C.float a=1,*b=a,*c=b; D.double a=0;b=1.1; 解析: 以下选项中可作为 C 语言合法常量的是( )。(分数:2.00) A.-80 √ B.-080 C.-8e1.0 D.-80.0e 解析: if 语句中用作判断的表达式( )。(分数:2.00) 必是逻辑值B.必是整数 C.必是正数 D.可是任意合法数值 √ 解析: 数组名作为函数参数传递给函数时,数组名被处理成该数组的( 长度 元素个数 C.各元素的值D.首地址 √ 解析: 设有 double x[5],*p=x;则 scanf 能正确读数据给 x[0]的格式是( A.(%f,x); B.(%lf,*x); C.(%lf,p); √ D.(%lf,p[0]); )。(分数:2.00) )。(分数:2.00) 解析: 6.有定义:char s[3][10],(*k)[3],*p;,则以下赋值语句正确的是( )。(分数:2.00) A.p=s[0]; √ B.p=k; C.p=s; D.k=s; 解析: 函数 f 的定义如下,执行函数调用语句 z=f(3)后 z 的值是( )。 f(int x) { if(x==0||x==1) return(3); return x*x-f(x-2); }(分数:2.00) A.0 B.9 C.3 √ D.8 解析: 已知 int k=0; 以下程序的运行结果是( )。 void fun(int m) { m+=k; k+=m; printf(%d%d,m,k++); } void main() { int i=4; fun(i++); printf(%d%d\n,i,k); }(分数:2.00) A.4455 √ B.4555 C.4445 D.4545 解析: 已知 char *p=ABC;则 printf(%d\n,*(p+3))的运行结果是( )。(分数:2.00) A.67 B.0 √ C.字符C的地址D.字符C 解析: 以下关于 do-while 循环的描述中正确的是( )。(分数:2.00) 循环体内不能使用复合语句 在 while(表达式)后面不能写分号 先执行一次循环,再进行判断 √ 根据情况可以省略 while 解析: 二、程序分析题(总题数:4,分数:20.00) void main( ) { int x=-9,y=5,z=8; if(x<y) if(y<0) z=0 ; eles z+=1 printf(%d,z); }(分数:5.00) 正确答案:( 9 ) 解析: void main( ) { char b=a,c=A; int i; for(i=0;i6;i++) { if(i%2) putchar(i+b); else putchar(i+c); } }(分数:5.00) 正确答案:( AbCdEf ) 解析: int fun(int x,int y) { if(!x) return -1; else if(y==1) return x%10; else return fun(x/10,y-1); } void main( ) { printf(%d%d,fun(123456,3),fun(123456,8)); }(分数:5.00) 正确答案:( 4-1 ) 解析: void main( ) { int a[3][3]={1,3,5,2,4,6,7,8,9},(*p)[3]=a,i,j,s; for(i=0;i3;i++) for(j=0;j1;j++) { s=*(*(p+i)+j); *(*(p+i)+j)=*(*(p+j)+i); *(*(p+j)+i)=s; } for(i=0;i3;i++) { for(j=0;j3;j++) printf(%3d,*(*(p+i)+j)); printf(\n); } }(分数:5.00) 正确答案:( 127348569 ) 解析: 三、程序填空题(总题数:4,分数:60.00) 输入一整数,计算其位数 k,然后将其各位数字按逆序转换为字符串输出。例如,输入 14251,则输出“15241”;输入-6319870,则输出“-0789136”。 void main( ) { long num,t,i=0,k; char *pstr; scanf(%ld,num); t=num; k= ① ; while( ② ) { t=t/10; k++;

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档