admin 管理员组

文章数量: 1086019


2024年4月26日发(作者:键盘上结束进程的按键)

专升本C语言历年考试题及答案

XXX2005年

专升本选拔考试《C语言程序设计》试卷(考试时

间120分钟,总分100分)

一、用C语言描述下列命题(共16分,每小题2分)

1、a、b和c均为整型变量,a和b中有一个大于c。

2bb4ac的C语言表达式(注:sqrt( )为开方函数)。2、

数学公式:

2a

3、写出100内的自然数x,能被3或7整除的表达式。

4、写出判断字符变量ch是阿拉伯数字字符的表达式。

5、写出满足x<60或90≤x≤100的C语言表达式。

6、写出平面上的点(x,y)落在单位圆内的表达式。

7、数组p[10]的各元素用于保存指向char型的指针,写

出该数组的定义。

8、有名为max的函数,其功能是对两个int型参数x、y

进行计算,返回其中的较大者,写出该函数的说明部分。

二、根据要求画出流程图或N-S图(共10分,每小题5

分)

1、用流程图或N-S图表示以下算法。

输入x的值,按以下函数计较y的值,并输出y的值。

2、画出打印以下图案的算法流程图或N-S图。

3、步伐浏览题(共20分,每题4分)

1、# include

void main( ) {

int i,sum=0;

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

if(i%3!=0) continue;

else sum=sum+i;

printf(“sum=%dn”,sum);

请叙述上面程序的功能,并写出程序的运行结果。

2、void main( ) {

int a,b,x=1,y=1;

scanf("%d%d",&a,&b);

if (a>0)x=x+y;

if (a

elseif (a==b)y=5;

elsey=x+y;

printf("x=%d,y=%dn",x,y);

假设输入为: 2-3,则程序运行后的输出结果为:

3、void main() {

int a[3][3]={2,4,6,8,10,12,14,16,18};

int sum=0.i。j;

for ( i=0.i<3.i++)

for ( j=0.j<3.j++ )

if (i==j) sum+=a[i][j];

printf(“sum=%dn”,sum)。

请叙述上面程序的功能,并写出程序的运行结果。

4、void main( ){

int i=0;

int x,s1,s2,s3;

s1=s2=s3=0;

while(i++<10){

scanf("%d",&x);

switch(abs(x)%3){

case 0:s1++;break;

case 1:s2++;break;

;

printf("s1=%d,s2=%d,s3=%d",s1,s2,s3);

请叙说上面步伐的功用。

5、int fun(int n) {

if(n==0) return 0;

else if(n==1) return 1;

return n*n+fun(n-1);

void main(){

printf(“Result );

请叙说上面步伐中fun函数的功用并写出步伐的运转成效。

4、步伐填空(共28分,每空2分)

1、以下函数用于求出一个3×4矩阵中的最小元素值。

int min_value(int m[][3]) {

int i。j。min;

min=m[0][0];

for (i=0;①。i++)

for (j=0.②。j++)

if (③

return( min )。

2、程序的功能是:从键盘输入一串字符(以回车换行符

结束),统计其中大写英文字母的个数,将结果保存在变量

count中。

void main( ){

int count=0;

char c;

while(c!='n'){

if (②)③;

c=getchar();

printf("XXX"。count);

3、以下函数的功能是:在第一个循环中给前n个数组元

素依次赋值1~n;在第二个循环中使a数组的n个元素值对称

互换,变成n、n-1.4、3、2、1.

void fun ( int a[ ],int n){

int i;

int temp;

for(i=1.i<=n。i++) a[i-1]= i;

for(i=0.i

temp=①;

a[i]=②;

③=temp;

4、以下步伐是完成如图1所示图案的打印。

void main() {

int i,j,k;

char ch;

for(i=1,ch=①;i<=②;i++){

for(j=1;j<=4-i;j++) putchar('□');/*□表示空格符*/

for(k=1;k<=③;k++)

putchar(ch);

printf("n");

A

B B B

五、程序设计题(共26分)

C C C C C

D D D D D D D

1、设一个三位数可以表示为abc,若其能满足条件

a3+b3+c3=abc,则称其为水仙花数。

图1)

编程求出所有的水仙花数。(8分)

2、编程求数列1+(1+2)+(1+2+3)+…+(1+2+。+10)的和并

输出。(8分)

3、设有10个学生的信息,包括学号、姓名和三门功课的

成绩,试编写学生信息输入函数、学生信息输出函数、打印每

一学生平均分函数,最后编写主函数,并在主函数中调用测试

这些函数。(10分)

专升本提拔测验《C言语步伐设想》参考谜底及评分尺度

1、用C言语描绘以下命题(共16分,每题2分)1、

a>c||b>c2、(-b+sqrt(b*b-4*a*c)/(2*a)

3、(x>=1&&x=’’&&ch=90&&x<=1006、x*x+y*y<=1

7、char *p[10];8、int max(int x,int y)

2、按照请求画出流程图或N-S图(共10分,每题5分)

1、

2、

Fx>=0T

TF

x>0

y=1i=1~4y=0y=-1

三、程序阅读题(共20分,每小题4分)

j=1~ i

sum=165打印’&’字符1、输出:

30内能被换行3整除的数的和。功用:求

2、输出:x=2,y=3

3、输出:sum=30

功用:求3*3矩阵对角线上元素之和。

4、功能:输入10个数,分别求出其中能被1、2、3整除

的数的和并打印。5、输出:Result is:55

fun函数的功能:求12+22+。+n2

四、程序填空(共28分,每空2分)

1、①i<3②j<4③a[i][j]④a[i][j]

2、①c=getchar( )②c>='A' && c<='Z'③count++

3、①a[i]②a[n-i-1]③a[n-i-1]

4、①'A'②4③2*i-1④ch++

五、程序设计题(共26分,8+8+10)

1、

void main() {

int a,b,c;

for(a=1;a<=9;a++)

for(b=0;b<=9;b++)

for(c=1;c<=9;c++)

if(a*a*a+b*b*b+c*c*c==100*a+10*b+c)

printf("%5d",100*a+10*b+c);

2、

include

void main(){

int i,s,sum=0;

for(i=1,s=0;i<=10;i++){

s=s+i;

sum=sum+s;

printf("Result );

3、

include

include

XXX成员变量XXX透露表现学号*/

char name[20];/*姓名*/

float score[3];/*成绩*/

stud;

void input(stud s[],int n)

int k;char t[10];

for (k=0.k

printf("No:");gets(t)。s[k].num=atoi(t);

printf("name:")。gets(s[k].name);

printf("score1=?")。gets(t)。s[k].score[1]=atof(t);

printf("score2=?")。gets(t)。s[k].score[2]=atof(t);

printf("score3=?")。gets(t)。s[k].score[3]=atof(t);

void output(stud s[],int n)

int k;

printf("%10s%20s%8s%8s%8sn","no","name","score1","sco

re2","score3");

for (k=0.k

printf("%10d",s[k].num);

printf("%20s",s[k].name);

printf("%8.2f",s[k].score[1]);

printf("%8.2f",s[k].score[2]);

printf("%8.2fn",s[k].score[3]);

void print_average(stud s[],int n)

int k;

printf("nn%10s%20s%12sn","no","name","ave_score");

for (k=0.k

printf("%10d",s[k].num);

printf("%20s",s[k].name);

printf("%8.2fn",(s[k].score[1]+s[k].score[2]+s[k].score[3])/3);

void main(){

stud st[10];

input(st,3);

output(st,3);

print_average(st,3);

C言语与步伐设想试题

1、用C言语描绘以下命题(共16分,每题2分)

1.x为整数,写出x能被3除尽,且被5除余2的判断

表达式。


本文标签: 函数 写出 步伐 学生 程序