武汉科技大学855-C语言程序设计2013--2019(都有答案)考研初试真题

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

A) 所有成员一起驻留在内存中。 B) 只有一个成员驻留在内存中。
C) 部分成员驻留在内存中。
D) 没有成员驻留在内存中。
2. 数组定义为“int a[4][5];”,下列哪一个引用是错误的( )。
A)*a
B)*(*(a+2)+3)
C)&a[2][3]
D)++a
Hale Waihona Puke Baidu3. 结构变量 stu,类型为 STU,含有域 major,下面哪条语句正确引用了 major?(
密封线内不要写题 准考证号码:
二 O 一三年招收硕士研究生入学考试试题
考试科目代码及科目名称: 855 C 语言程序设计
答题内容写在答题纸上,写在试卷或草稿纸上一律无效考完后试题随答题纸交回。 考试时间 3 小时,总分值 150 分。
一、选择题(每题 2 分,共 20 分)
1.C 语言结构类型变量在程序执行期间( )。
A)10
B) 4
C)0
D)以上均不是
9. 设整型变量 i,j 值均为 3,执行了 j=i++,j++,++i 后,i,j 的值是( )。
A)3,3
B)5,4
C)4,5
D)6,6
10. while(!x) 中的表达式(!x)等价于( )。
A) x!=1
B)x!=0
C)x==1 D) x==0
报考专业:
姓名 :
第 页 共 54 页
1
二、阅读程序写出程序运行结果(每题 5 分,共 20 分)
1. void main( ) { int k=0; char c='A'; do { switch (c++) { case 'A': k++; break; case 'B': k--; case 'C': k+=2; break; case 'D': k=k%2; break; case 'E': k=k*10; break; default: k=k/3; } k++; } while(c<'G'); printf("k=%d\n", k); }

A) stu.major
B)stu->major
C)STU->major
D)STU.major
4.设函数 fun 和实参数组的说明形式为:void fun(char ch,float x[]); float a[10];
以下对函数的调用语句中,正确的是( )。
A)fun("abc",a[]);
B)t=fun('D',a);
三、程序填空(每空 3 分,共 60 分)
第 页 共 54 页
2
1. 以下函数的功能是将字符串 sa 中的内容逆置过来,即:若原串为”abcde”,逆置后应
为”edcba”。
#include <string.h>
void strinvert(char *sa)
{
int i=0,j,t;
j= (1) ;
{ int t0=0,t1=1,t=n ;
while( (4)
)
{ t= (5)
; t0=t1; t1=t; n-- ; }
return
(6)
;
}
3. 下面程序的功能是用公式π/4≈1 1 1 1 ... (直至最后一项的值小于 10-4 为止)求 357
π的值。
#include<stdio.h>
C)fun('65',2.8);
D)fun(32,a[10]);
5. 下列语句中与语句 while(1){if(i>=100)break;s+=i;i++;} 功能相同的是( )。
A)for(;i<100;i++) s=s+i;
B)for(;i<100;i++;s=s+i);
C)for(;i<=100;i++) s+=i;
4. 运行时输入:8 2 int ccc(int n, int r) { if(r>n) return 0; if (r==0||n==0||n==1) return 1; return ccc(n-1,r)+ccc(n-1,r-1); } void main() { int result = 0,n,r; do{ scanf("%d%d",&n,&r); }while(n<r); result = ccc(n,r); printf("ccc(%d,%d)=%d\n",n,r,result); }
2. void main ( void ) { int i=0; do { printf(“Yes!”); } while(++i<4); printf(“\n”); while(i++<8) printf(“No!”); }
3. #include <stdio.h> void main ( ) { int arr[]={3,6,9,12,15},*p,k; for( k=0 ; k < 5 ; k++ ) arr[k] += arr [k]/3 ; for(p=arr,k=0 ; k < 5 ; k++ ) printf(" %3d" , *(p+k)); }
while( (2)
)
{ t=sa[i]; sa[i]=sa[j]; sa[j]=t;
i++;
(3) ;
}
}
2. 下列程序 A 与 B 功能等价,请填空。
程序 A: int f(int n) { if(n<=1) return n; else return f(n-1)+f(n-2); }
程序 B: int f(int n)
main()
{ int sign=1,i=1;
float next=1.0,pi,sum=0;
while( (7)
)
{ sum= (8)
;
(9)
; i+=2; next=1.0/i; }
B)enum a {a1, a2, a3} ;
C)enum a={‘1’, ’2’, ’3’} ; D)enum a {“one”, ”two”, ”three”} ;
8. 对于以下递归函数 f,调用 f(4),其返回值为(

int f(int n) { if(n) return f(n-1)+n ; else return n; }
D)for(;i>=100;i++;s=s+i);
6.C 语言中函数返回值的类型是由( )决定的。
A) return 语句中的表达式类型
B)调用该函数的主调函数类型
C) 定义函数时所指定的函数类型
D)调用函数时临时
7. 以下对枚举类型名的定义中正确的是( )。
A)enum a={one, two, three};
相关文档
最新文档