考研真题


1. 淮北师范大学计算机科学与技术学院《871高级语言程序设计》历年考研真题汇总

2. 全国名校C语言程序设计考研真题汇总

考研指导书


1. 谭浩强《C程序设计》(第5版)典型习题

2. 谭浩强《C程序设计》(第5版)配套题库【考研真题精选+章节题库】

文章封面图片的替代文本

淮北师范大学计算机科学与技术学院《871高级语言程序设计》历年考研真题汇总

书籍目录


第一部分 历年考研真题汇编

第二部分 兄弟院校真题汇编

部分内容


第一部分 历年考研真题汇编

2014年淮北师范大学计算机科学与技术学院871高级语言程序设计考研真题

科目名称:高级语言程序设计 

科目代码:871

注:答案必须写在答题纸上,写在本试题纸上的无效!

一、单选题(本题共10小题,每小题3分,满分30分)

1设有定义int i; char c; float f; 则以下结果为整数的表达式是(  
)。

A.i*c 

B.i+f 

C.c+f 

D.i+c+f

2设有定义:int x=10,y=3,z; 则语句printf(“%d”,z=(x%y,x/y));的输出结果是(  )。

A.0

B.1

C.3  

D.4

3若有定义:int a[9], *p=a; 不能表示a[1]地址的表达式是(  )。

A.p+1  

B.a+1  

C.a++  

D.++p

4不能把字符串:Hello!赋给数组b的语句是(  
)。

A.char
b[10]={‘H’,’e’,’l’,’l’,’o’,’!’};  

B.char b[10]=”Hello!”;

C.char b[10];
strcpy(b,”Hello!”);  

D.char b[10];
b=”Hello!”;

5有如下语句:char *fun(int x, int y); 它是(  )。

A.对函数fun的定义 

B.对函数fun的原型说明

C.对函数fun的调用
 

D.不合法的

6若a为二维数组,则a[1][3]等价于(  )。

A.*((a+1)+3)

B.*(a[1]+3) 

C.(*(a+1)+3) 

D.&a[1]+3

7若a=3,b=4,按顺序执行下面的语句后,a,b的值分别为(  )。

a=a∧b; b=b∧a; a=a∧b;

A.3,3

B.4,4   

C.3,4    

D.4,3

8设有定义:struct stud{int a; float b;}stu1,*p; 若有p=&stu1;则对stu1中的成员a的正确引用是(  )。

A.(*p).stu1.a

B.(*p).a

C.p->stu1.a

D.p.stu1.a

9若用数组名作为函数调用时的实参,则传递给形参的是(  
)。

A.数组首地址  

B.数组的第一个元素值

C.数组中全部元素的值  

D.数组元素的个数

10以下程序运行后的输出结果是(  
)。

#include <stdio.h>

void main()

{ union
data

{ int
i;

char ch;}a;

a.ch=’b’;
a.i=321; printf(“%c\n”,a.ch);

}

A.a 

B.b

C.A 

D.B

二、阅读程序题(本题共3小题,满分40分)

1(10分)以下程序的输出结果是:。

#include
<stdio.h>

int fun(int n)

{

static int f=1;

f=f*n;

return f;

}

void main()

{

int i;

for(i=1;i<=5;i++)

printf(“%d\n”,fun(i));

}

2(15分)以下程序的输出结果是:。

#include
<stdio.h>

#define M 4

#define NUM
(M+1)*(M)/2

void main()

{

int
a[NUM],*p[M],i,j,t,n;

for(i=0;i<M;i++)

{

t=i*(i+1)/2;

p[i]=&a[t];

}

for(i=0;i<M;i++)

{

n=1;

for(j=0;j<=i;j++)

{
p[i][j]=i*M+n;n++; }

}

for(i=0;i<M;i++)

{

for(j=0;j<=i;j++)

printf(“%-4d”,p[i][j]);

printf(“\n”);

}

}

3(15分)若以下程序运行时输入computer,则输出结果是:。

#include
<stdio.h>

void fun(char
*s)

{

char *p=s,c;

while(*p)

p++;

p–;

while(s<p)

{

c=*s;

*s++=*p;

*p–=c;

}

}

void main()

{

char a[50];

scanf(“%s”,a);

fun(a);

printf(“%s”,a);

}

三、编程题(本题共4小题,满分80分)

1(15分)编程实现:从键盘输入10个实数,计算其平均值,将平均值和小于平均值的数写入到文本文件a1.txt中。

2(20分)编程用指针方法实现:对n个整数由小到大排序并输出。要求将排序单独写成一个函数,n个整数在主函数中输入,最后在主函数中输出排序后的n个整数。

3(20分)一个字符串中有数字和非数字字符,如”CS140@$*[1785%$%L108der0770IPqp”,将其中连续的数字作为一个正整数,编程输出其是7的倍数的正整数。

输入样例:

xYS3206@re%$*Qde130w7$*00980(iuKp

输出样例:

3206

7

980

4(25分)观察数字:12321,123321都有一个共同的特征,无论从左向右读还是从右向左读,都是相同的,这样的数字叫做回文数字。编程实现:找到一些5位或6位的十进制回文数字,该数字的各个数位之和等于输入的整数。

输入:

一个正整数n (10<n<100),表示要求满足的数位和。

输出要求:

若干行,每行包含一个满足要求的5位或6位整数。

数字按从小到大的顺序排列。

如果没有满足条件的,输出:-1

更多内容,请点击获取:
http://shuyue.100xuexi.com/Ebook/983320.html

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。