辅导C、 辅导C++/C、 辅导C语言
- 首页 >> C/C++编程四、学生成绩,结构体问题
24.下列程序的功能是:已知学生的记录由学号和学习成绩构成,N名学生的数据已存入a数组中。找出成绩最低的学生记录(假定最低成绩的记录是唯一的),通过形参返回。请编写函数mm(STU a[],STU *s)实现程序要求,最后调用函数reawriteDAT()把结果输出到文件out.dat中。
例如: KS01 87
KS09 67
KS11 97
25.列程序的功能是:已知学生的记录由学号和学习成绩构成,N名学生的数据已存入A数组中。找出成绩最高的学生记录(假定最高成绩的记录是唯一的),通过形参返回。请考生编写函数MMM(STU A[],STU *S)实现程序的要求,最后调用函数READWRITEDAT()把结果输出到文件OUT.DAT中.
26.编写程序处理10个学生的信息,每个学生的信息包括:学号、姓名、三门成绩。要求从键盘输入学生的数据用一个函数实现,输出成绩表(包括每个学生的学号、姓名、三门成绩及平均分数)用一个函数,再用一个函数输出平均分在前3名的学生姓名及平均分。
27.10个职工参加计算机等级考试的信息,每个人的信息包括:考号、姓名、性别、成绩。成绩分为优秀、合格、不合格三个等级。用函数实现输出每个职工的信息,用函数实现统计各个等级的人数。
五、产品五个因素的比较排列,结构体操作问题。
28.已知在文件IN.DAT中存有100个产品销售记录,每个产品销售记录由产品代码dm(字符型4位),产品名称mc(字符型10位),单价dj(整型),数量sl(整型),金额je(长整型)四部分组成。其中:金额=单价*数量计算得出。函数ReadDat()是读取这100个销售记录并存入结构数组sell中。请编制函数SortDat(),其功能要求:按产品代码从大到小进行排列,若产品代码相同,则按金额从大到小进行排列,最终排列结果仍存入结构数组sell中,最后调用函数WriteDat()把结果输出到文件OUT10.DAT中。
29.设有n个人围坐一圈并按顺时针方向从1到n编号,从第s个人开始进行1到m的报数,报数到第个m人,此人出圈,再从他的下一个人重新开始1到m的报数,如此进行下去直到所有的人都出圈为止。现要求按出圈次序,每10人一组,给出这n个人的顺序表。请考生编制函数Josegh()实现此功能并调用函数WriteDat()把结果p输出到文件OUT.DAT中。
设n=100,c=1,m=10.
(1)将1到n个人的序号存入一维数组p中;
(2)若第i个人报数后出圈,则将p[i]置于数组的倒数第i个位置上,而原来第i+1个至倒数第i个元素依次向前移动一个位置;
(3)重复第(2)步直至圈中只剩下p[1]为止。
六.字符替换
30.函数ReadDat()实现从文件ENG.IN中读取一篇英文文章,存入到字符串数组xx中;请编制函数encryptChar(),按给定的替代关系对数组xx中的所有字符进行替代,仍存入数组xx的对应的位置上,最后调用函数WriteDat()把结果xx输出到文件PS10.DAT中。
替代关系:f(p)=p*11 mod 256 (p是数组中某一个字符的ASCII值,f(p)是计算后新字符的ASCII值),如果原字符的ASCII值是偶数或计算后f(p)值小于等于32,则该字符不变,否则将f(p)所对应的字符进行替代。
31.函数ReadDat()实现从文件in.dat中读取20行数据存放到字符串数组xx中(第行字符串长度均小于80)。请编制函数jsSort(),其函数的功能是:以行为单位对字符串按给定的条件进行排序,排序后的结果仍按行重新存入字符串数组xx中,最后调用函数WriteDat()把结果xx输出到文件out.dat中。
条件:从字符串中间一分为二,左边部分按字符的ASCII值升序排序,排序后左边部分与右边部分进行交换。如果原字符串长度为奇数,则最中间的字符不参加处理,字符仍放在原位置上。
例如:位置 0 1 2 3 4 5 6 7 8
源字符串 d c b a h g f e
4 3 2 1 9 8 7 6 5
则处理后字符串 h g f e a b c d
8 7 6 5 9 1 2 3 4
七、其他(本大类可小组完成,小组成员要求3人以内)
32.数学计算工具程序设计
功能要求:各计算功能单独编写成函数,在主函数中通过选项菜单调用函数。
(1)选项菜单集成各个计算功能函数
(2)求任意数的阶乘
(3)求组合数
(4)求任意两个整数的最大公约数和最小公倍数
(5)判断任意数是否是素数
(6)显示菲波拉契数列的前N项
33.学生成绩管理程序设计
(1)选项菜单集成各功能函数模块
(2)录入学生成绩(姓名、学号、语文、数学成绩,总分自动计算)
(3)按总分排名次
(4)按姓名查找某学生成绩
(5)统计各课程的平均分、及格率、最高分、最低分
(6)打印成绩表
34.工资管理程序设计
(1)选项菜单集成各功能函数模块
(2)录入工资数据(职工号、姓名、基本工资、岗位工资、补贴、扣款,计算实发工资)
(3)按职工号排序
(4)按姓名查找
(5)汇总统计各部门的各项工资数据
(6)打印工资表
35.英文加密解密程序设计
(1)选项菜单集成各功能函数模块
(2)输入英文(可以有多行)
(3)统计文章的单词数量和句子数量
(4)文章加密
(5)密文解密
36.100以内的整数四则运算测试程序设计
(1)选项菜单集成各功能函数模块
(2)出题(每次出10道题目)
(3)答题并评分
(4)答错的题给出正确答案
(5)显示答卷