一、填空题:程序通过定义学生结构体变量,存储了学生的学号、姓名和3门课的成绩。所有学生数据均以二进制方式输出到文件中。
函数fun的功能是从形参filename所指的文件中读入学生数据,并按照学号从小到大排序后,再用二进制方式把排序后的学生数据输出到filename所指的文件中,覆盖原来的文件内容。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。注意:源程序存放在考生文件夹下中。
不得增行或删行,也不得更改程序的结构!给定源程序:#include#define n 5
typedefstruct student stu;
void fun(char *filename)fp = fopen(filename, "wb");
found_3__(s, sizeof(stu), n, fp); 二进制输出*/fclose(fp);}
main()
stu t[n]=,ss[n];inti,j; file *fp;
fp = fopen(""wb");fwrite(t, sizeof(stu), 5, fp);fclose(fp);
printf("the original data :");for (j=0; j<="
printf("no: %ld name: %8s scores:
"t[j].sno, t[j].name);for (i=0; i<3; i++)printf("%6.
2f ",t[j].score[i]);printf("");
fun(""
printf("the data after sorting :");fp = fopen(""rb");fread(ss, sizeof(stu), 5, fp);fclose(fp);for (j=0; j<="
printf("no: %ld name: %8s scores:
"ss[j].sno, ss[j].name);for (i=0; i<3; i++)printf("%6.
2f ",ss[j].score[i]);printf("");
解题答案:第一空fp = fopen(filename, "rb");
第二空if (s[i].sno> s[j].sno)
第三空。fwrite(s, sizeof(stu), n, fp); 二进制输出*/
二、改错题:给定程序中函数fun的功能是:在字符串的最前端加入n个*号,形成新串,并且覆盖原串。
注意:字符串的长度最长允许为79。
请改正函数fun中指定部位的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!给定源程序:#include#include
void fun (char s,int n)
foundwhile(*p++)a[i]=0;strcpy(s,a);
main()
int n; char s[80];
printf("enter a string : gets(s);printf("the string \"s\"",s);
printf("enter n (number ofscanf("%d",&n);fun(s,n);
printf("the string after insert : s\" n" ,s);}
解题答案:foundp=s;
foundwhile(*p++)
三、程序题:请编写函数fun,函数的功能是:统计各年龄段的人数。
n个年龄通过调用随机函数获得,并放在主函数的age数组中;要求函数把0至9岁年龄段的人数放在d[0]中,把10至19岁年龄段的人数放在d[1]中,把20至29岁年龄段的人数放在d[2]中,其余依此类推,把100岁(含100)以上年龄的人数都放在d[10]中。结果在主函数中输出。注意:
部分源程序在文件中。
请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
给定源程序:#include#define n 50#define m 11
void fun(int *a, int *b){}
doublernd()
static t=29,c=217,m=1024,r=0;r=(r*t+c)%m; return((double)r/m);}
main()
int age[n], i, d[m];void nono (int d[m]);for(i=0; i< p=""
printf("the original data :");for(i=0;i
printf("");fun(age, d);
for(i=0;i<10;i++)printf("%4d---4d : 4d",i*10,i*10+9,d[i]);printf("over 100 : 4d",d[10]);nono(d);
void nono(int d[m])
/*请在此函数内打开文件,输入测试数据,调用fun函数,输出数据,关闭文件。*/file *wf ;inti ;
wf = fopen(""w");
for(i = 0 ; i< 10 ; i++)fprintf(wf, "4d---4d : 4d", i*10, i*10+9, d[i]);fprintf(wf, "over 100 : 4d", d[10]);fclose(wf);}
doublernd()
static t=29,c=217,m=1024,r=0;r=(r*t+c)%m; return((double)r/m);}
2019上机题 部分
2011会计电算化上机题。一 考试时间 90 分钟,总分 100 分 二 考试科目 会计电算化模拟考试 三 考试内容 四 注意事项 一 系统管理 建立账套。账套号 605 账套名称 贵州铜业集团。账套路径 默认账套启用日期 2008年6月 单位名称 简称 贵铜集团。企业类型 工业行业性质 小企业会计...
2019信息检索上机题
姓名 雷波学号 109202010211系 机械系班级 09机本班。1 在中国知识基础设施工程 cnki 系列资源库的中国期刊全文数据库中检索篇名为 聚合硫酸铁的制备 发表在 四川师范大学学报 上的 6 1 给出检索策略。检索词 篇名 聚合硫酸铁的制备,刊名 四川师范大学学报,时间 1997 201...
数组上机题
数组。1 已知2个一维数组 a b 把数组a与数组b对应的元素乘积再赋值给数组b,如 b 2 a 2 b 2 最后输出数组b的元素。public class cheng int b new int 7 for int i 0 i b i i 1 for int i 0 i b i a i b i f...