二级c语言编程题保存,二级C语言编程题.doc

二级C语言编程题二级C语言编程题

宏为世纪教育 二级C语言考前上机题库(07年9月原题)

三、编程题

考试做题要求:

1、按题目要求编写部分代码,不要改动已经有的代码。

2、在运行时如果遇到死循环,按Ctrl+Break键结束运行。

3、题目做完后必须要有运行结果,没有运行结果没有分。

1: 请编写函数fun, 其功能是: 计算并输出下列多项式的值:

例如, 在主函数中从键盘给n输入8后, 输出为: s=0.662872。

注意: 要求n的值大于1但不大于100。

部分源程序在文件PROG1.C中。

请勿改动主函数main和其他函数中的任何内容, 仅在函数fun的花括号中填入你编写的若干语句。

#include

double fun(int n)

{

}

main()

{ int n; double s;

printf("\nInput n: "); scanf("%d",&n);

s=fun(n);

printf("\ns=%f\n",s);

NONO();

}

NONO()

{/* 请在此函数内打开文件,输入测试数据,调用 fun 函数,输出数据,关闭文件。 */

FILE *rf, *wf ; int n, i ; double s ;

rf = fopen("c:\\test\\in.dat","r") ;

wf = fopen("c:\\test\\out.dat","w") ;

for(i = 0 ; i < 10 ; i++) {

fscanf(rf, "%d", &n) ;

s = fun(n) ;

fprintf(wf, "%lf\n", s) ;

}

fclose(rf) ; fclose(wf) ;

}

2: 学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写函数fun,它的功能是:函数返回指定学号的学生数据,指定的学号在主函数中输入。若没找到指定学号,在结构体变量中给学号置空串,给成绩置-1,作为函数值返回。(用于字符串比较的函数是strcmp)。

注意: 部分源程序在文件PROG1.C中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。

#include

#include

#define N 16

typedef struct

{ char num[10];

int s;

} STREC;

STREC fun( STREC *a, char *b )

{

}

main()

{ STREC s[N]={{"GA005",85},{"GA003",76},{"GA002",69},{"GA004",85},

{"GA001",91},{"GA007",72},{"GA008",64},{"GA006",87},

{"GA015",85},{"GA013",91},{"GA012",64},{"GA014",91},

{"GA011",77},{"GA017",64},{"GA018",64},{"GA016",72}};

STREC h;

char m[10];

int i;FILE *out ;

printf("The original data:\n");

for(i=0; i

{ if(i%4==0) printf("\n");

printf("%s %3d ",s[i].num,s[i].s);

}

printf("\n\nEnter the number: ");gets(m);

h=fun( s,m );

printf("The data : ");

printf("\n%s %4d\n",h.num,h.s);

printf("\n");

out = fopen("c:\\test\\out.dat","w") ;

h=fun(s,"GA013");

fprintf(out,"%s %4d\n",h.num,h.s);

fclose(out);

}

3: 已知学生的记录由学号和学习成绩构成,N名学生的数据已存入结构体数组a中。请编写函数 fun,函数的功能是:找出成绩最高的学生记录,通过形参指针传回主函数(规定只有一个最高分)。已给出函数的首部,请完成该函数。

注意: 部分源程序存在文件PR

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值