计算机三级上机考前题库.docx
- 文档编号:3972945
- 上传时间:2022-11-26
- 格式:DOCX
- 页数:189
- 大小:50.78KB
计算机三级上机考前题库.docx
《计算机三级上机考前题库.docx》由会员分享,可在线阅读,更多相关《计算机三级上机考前题库.docx(189页珍藏版)》请在冰豆网上搜索。
计算机三级上机考前题库
1已知在文件IN1.DAT中存有100个产品销售记录,每个产品销售记录由产品代码dm(字符型4位)、产品名称mc(字符型10位)、单价dj(整型)、数量sl(整型)、金额je(长整型)五部分组成。
其中:
金额=单价×数量。
函数ReadDat()的功能是读取这100个销售记录并存入结构数组sell中。
请编制函数SortDat(),其功能要求:
按产品名称从小到大进行排列,若产品名称相同,则按金额从小到大进行排列,最终排列结果仍存入结构数组sell中,最后调用函数WriteDat()把结果输出到文件OUT1.DAT中。
注意:
部分源程序已给出。
请勿改动主函数main()、读数据函数ReadDat()和输出数据函数WriteDat()的内容。
【试题程序】
#include
#include
#include
#include
#include
#defineMAX100
typedefstruct
{chardm[5];/*产品代码*/
charmc[11];/*产品名称*/
intdj;/*单价*/
intsl;/*数量*/
longje;/*金额*/
}PRO;
PROsell[MAX];
voidReadDat();
voidWriteDat();
voidSortDat()
{
inti,j;
PROc;
for(i=0;i {for(j=i+1;j if(strcmp(sell[i].mc,sell[j].mc)>0) {c=sell[i];sell[i]=sell[j];sell[j]=c;} elseif(strcmp(sell[i].mc,sell[j].mc)==0&&sell[i].je>sell[j].je) {c=sell[i];sell[i]=sell[j];sell[j]=c;} } } main() { memset(sell,0,sizeof(sell)); ReadDat(); SortDat(); WriteDat(); } voidReadDat() { FILE*fp; charstr[80],ch[11]; inti; fp=fopen("IN1.DAT","r"); for(i=0;i<100;i++) { fgets(str,80,fp); memcpy(sell[i].dm,str,4); memcpy(sell[i].mc,str+4,10); memcpy(ch,str+14,4);ch[4]=0; sell[i].dj=atoi(ch); memcpy(ch,str+18,5);ch[5]=0; sell[i].sl=atoi(ch); sell[i].je=(long)sell[i].dj*sell[i].sl; } fclose(fp); } voidWriteDat() { FILE*fp; inti; fp=fopen("OUT1.DAT","w"); for(i=0;i<100;i++) fprintf(fp,"%s%s%4d%5d%10ld\n",sell[i].dm,sell[i].mc,sell[i].dj,sell[i].sl, sell[i].je); fclose(fp); } 2已知在文件IN2.DAT中存有100个产品销售记录,每个产品销售记录由产品代码dm(字符型4位)、产品名称mc(字符型10位)、单价dj(整型)、数量sl(整型)、金额je(长整型)五部分组成。 其中: 金额=单价×数量。 函数ReadDat()的功能是读取这100个销售记录并存入结构数组sell中。 请编制函数SortDat(),其功能要求: 按产品名称从大到小进行排列,若产品名称相同,则按金额从小到大进行排列,最终排列结果仍存入结构数组sell中,最后调用函数WriteDat()把结果输出到文件OUT2.DAT中。 注意: 部分源程序已给出。 请勿改动主函数main()、读数据函数ReadDat()和输出数据函数WriteDat()的内容。 【试题程序】 #include #include #include #include #include #defineMAX100 typedefstruct {chardm[5];/*产品代码*/ charmc[11];/*产品名称*/ intdj;/*单价*/ intsl;/*数量*/ longje;/*金额*/ }PRO; PROsell[MAX]; voidReadDat(); voidWriteDat(); voidSortDat() { inti,j; PROc; for(i=0;i for(j=i+1;j if(strcmp(sell[i].mc,sell[j].mc)<0) {c=sell[i];sell[i]=sell[j];sell[j]=c;} elseif(strcmp(sell[i].mc,sell[j].mc)==0&&sell[i].je>sell[j].je) {c=sell[i];sell[i]=sell[j];sell[j]=c;} } voidmain() { memset(sell,0,sizeof(sell)); ReadDat(); SortDat(); WriteDat(); } voidReadDat() { FILE*fp; charstr[80],ch[11]; inti; fp=fopen("IN2.DAT","r"); for(i=0;i<100;i++) { fgets(str,80,fp); memcpy(sell[i].dm,str,4); memcpy(sell[i].mc,str+4,10); memcpy(ch,str+14,4);ch[4]=0; sell[i].dj=atoi(ch); memcpy(ch,str+18,5);ch[5]=0; sell[i].sl=atoi(ch); sell[i].je=(long)sell[i].dj*sell[i].sl;} fclose(fp); } voidWriteDat(void) { FILE*fp; inti; fp=fopen("OUT2.DAT","w"); for(i=0;i<100;i++) fprintf(fp,"%s%s%4d%5d%10ld\n",sell[i].dm,sell[i].mc,sell[i].dj,sell[i].sl, sell[i].je); fclose(fp); } 3已知在文件IN3.DAT中存有100个产品销售记录,每个产品销售记录由产品代码dm(字符型4位)、产品名称mc(字符型10位)、单价dj(整型)、数量sl(整型)、金额je(长整型)五部分组成。 其中: 金额=单价×数量。 函数ReadDat()的功能是读取这100个销售记录并存入结构数组sell中。 请编制函数SortDat(),其功能要求: 按产品代码从大到小进行排列,若产品代码相同,则按金额从大到小进行排列,最终排列结果仍存入结构数组sell中,最后调用函数WriteDat()把结果输出到文件OUT3.DAT中。 注意: 部分源程序已给出。 请勿改动主函数main()、读数据函数ReadDat()和输出数据函数WriteDat()的内容。 【试题程序】 #include #include #include #include #include #defineMAX100 typedefstruct {chardm[5];/*产品代码*/ charmc[11];/*产品名称*/ intdj;/*单价*/ intsl;/*数量*/ longje;/*金额*/ }PRO; PROsell[MAX]; voidReadDat(); voidWriteDat(); voidSortDat() { inti,j; PROc; for(i=0;i for(j=i+1;j if(strcmp(sell[i].dm,sell[j].dm)<0) {c=sell[i];sell[i]=sell[j];sell[j]=c;} elseif(strcmp(sell[i].dm,sell[j].dm)==0&&sell[i].je {c=sell[i];sell[i]=sell[j];sell[j]=c;} } voidmain() { memset(sell,0,sizeof(sell)); ReadDat(); SortDat(); WriteDat(); } voidReadDat() { FILE*fp; charstr[80],ch[11]; inti; fp=fopen("IN3.DAT","r"); for(i=0;i<100;i++) { fgets(str,80,fp); memcpy(sell[i].dm,str,4); memcpy(sell[i].mc,str+4,10); memcpy(ch,str+14,4);ch[4]=0; sell[i].dj=atoi(ch); memcpy(ch,str+18,5);ch[5]=0; sell[i].sl=atoi(ch); sell[i].je=(long)sell[i].dj*sell[i].sl; } fclose(fp); } voidWriteDat(void) { FILE*fp; inti; fp=fopen("OUT3.DAT","w"); for(i=0;i<100;i++) fprintf(fp,"%s%s%4d%5d%10ld\n",sell[i].dm,sell[i].mc,sell[i].dj,sell[i].sl, sell[i].je); fclose(fp); } 4已知在文件IN4.DAT中存有100个产品销售记录,每个产品销售记录由产品代码dm(字符型4位)、产品名称mc(字符型10位)、单价dj(整型)、数量sl(整型)、金额je(长整型)五部分组成。 其中: 金额=单价×数量。 函数ReadDat()的功能是读取这100个销售记录并存入结构数组sell中。 请编制函数SortDat(),其功能要求: 按产品名称从大到小进行排列,若产品名称相同,则按金额从大到小进行排列,最终排列结果仍存入结构数组sell中,最后调用函数WriteDat()把结果输出到文件OUT4.DAT中。 注意: 部分源程序已给出。 请勿改动主函数main()、读数据函数ReadDat()和输出数据函数WriteDat()的内容。 【试题程序】 #include #include #include #include #include #defineMAX100 typedefstruct {chardm[5];/*产品代码*/ charmc[11];/*产品名称*/ intdj;/*单价*/ intsl;/*数量*/ longje;/*金额*/ }PRO; PROsell[MAX]; voidReadDat(); voidWriteDat(); voidSortDat() {inti,j; PROc; for(i=0;i for(j=i+1;j if(strcmp(sell[i].mc,sell[j].mc)<0) {c=sell[i];sell[i]=sell[j];sell[j]=c;} elseif(strcmp(sell[i].mc,sell[j].mc)==0&&sell[i].je {c=sell[i];sell[i]=sell[j];sell[j]=c;} } voidmain() { memset(sell,0,sizeof(sell)); ReadDat(); SortDat(); WriteDat(); } voidReadDat() { FILE*fp; charstr[80],ch[11]; inti; fp=fopen("IN4.DAT","r"); for(i=0;i<100;i++) { fgets(str,80,fp); memcpy(sell[i].dm,str,4); memcpy(sell[i].mc,str+4,10); memcpy(ch,str+14,4);ch[4]=0; sell[i].dj=atoi(ch); memcpy(ch,str+18,5);ch[5]=0; sell[i].sl=atoi(ch); sell[i].je=(long)sell[i].dj*sell[i].sl; } fclose(fp); } voidWriteDat(void) { FILE*fp; inti; fp=fopen("OUT4.DAT","w"); for(i=0;i<100;i++) fprintf(fp,"%s%s%4d%5d%10ld\n",sell[i].dm,sell[i].mc,sell[i].dj,sell[i].sl, sell[i].je); fclose(fp); } 5已知在文件IN5.DAT中存有100个产品销售记录,每个产品销售记录由产品代码dm(字符型4位)、产品名称mc(字符型10位)、单价dj(整型)、数量sl(整型)、金额je(长整型)五部分组成。 其中: 金额=单价×数量。 函数ReadDat()的功能是读取这100个销售记录并存入结构数组sell中。 请编制函数SortDat(),其功能要求: 按金额从大到小进行排列,若金额相等,则按产品代码从小到大进行排列,最终排列结果仍存入结构数组sell中,最后调用函数WriteDat()把结果输出到文件OUT5.DAT中。 注意: 部分源程序已给出。 请勿改动主函数main()、读数据函数ReadDat()和输出数据函数WriteDat()的内容。 【试题程序】 #include #include #include #include #include #defineMAX100 typedefstruct {chardm[5];/*产品代码*/ charmc[11];/*产品名称*/ intdj;/*单价*/ intsl;/*数量*/ longje;/*金额*/ }PRO; PROsell[MAX]; voidReadDat(); voidWriteDat(); voidSortDat() { inti,j; PROc; for(i=0;i for(j=i+1;j if(sell[i].je {c=sell[i];sell[i]=sell[j];sell[j]=c;} elseif(sell[i].je==sell[j].je&&strcmp(sell[i].dm,sell[j].dm)>0) {c=sell[i];sell[i]=sell[j];sell[j]=c;} } voidmain() { memset(sell,0,sizeof(sell)); ReadDat(); SortDat(); WriteDat(); } voidReadDat() { FILE*fp; charstr[80],ch[11]; inti; fp=fopen("IN5.DAT","r"); for(i=0;i<100;i++) { fgets(str,80,fp); memcpy(sell[i].dm,str,4); memcpy(sell[i].mc,str+4,10); memcpy(ch,str+14,4);ch[4]=0; sell[i].dj=atoi(ch); memcpy(ch,str+18,5);ch[5]=0; sell[i].sl=atoi(ch); sell[i].je=(long)sell[i].dj*sell[i].sl; } fclose(fp); } voidWriteDat(void) { FILE*fp; inti; fp=fopen("OUT5.DAT","w"); for(i=0;i<100;i++) fprintf(fp,"%s%s%4d%5d%10ld\n",sell[i].dm,sell[i].mc,sell[i].dj,sell[i].sl,sell[i].je); fclose(fp); } 6已知在文件IN6.DAT中存有100个产品销售记录,每个产品销售记录由产品代码dm(字符型4位)、产品名称mc(字符型10位)、单价dj(整型)、数量sl(整型)、金额je(长整型)五部分组成。 其中: 金额=单价×数量。 函数ReadDat()的功能是读取这100个销售记录并存入结构数组sell中。 请编制函数SortDat(),其功能要求: 按产品代码从小到大进行排列,若产品代码相同,则按金额从小到大进行排列,最终排列结果仍存入结构数组sell中,最后调用函数WriteDat()把结果输出到文件OUT6.DAT中。 注意: 部分源程序已给出。 请勿改动主函数main()、读数据函数ReadDat()和输出数据函数WriteDat()的内容。 【试题程序】 #include #include #include #include #include #defineMAX100 typedefstruct {chardm[5];/*产品代码*/ charmc[11];/*产品名称*/ intdj;/*单价*/ intsl;/*数量*/ longje;/*金额*/ }PRO; PROsell[MAX]; voidReadDat(); voidWriteDat(); voidSortDat() {inti,j; PROc; for(i=0;i for(j=i+1;j if(strcmp(sell[i].dm,sell[j].dm)>0) {c=sell[i];sell[i]=sell[j];sell[j]=c;} elseif(strcmp(sell[i].dm,sell[j].dm)==0&&sell[i].je>sell[j].je) {c=sell[i];sell[i]=sell[j];sell[j]=c;} } voidmain() { memset(sell,0,sizeof(sell)); ReadDat(); SortDat(); WriteDat(); } voidReadDat() { FILE*fp; charstr[80],ch[11]; inti; fp=fopen("IN6.DAT","r"); for(i=0;i<100;i++) { fgets(str,80,fp); memcpy(sell[i].dm,str,4); memcpy(sell[i].mc,str+4,10); memcpy(ch,str+14,4);ch[4]=0; sell[i].dj=atoi(ch); memcpy(ch,str+18,5);ch[5]=0; sell[i].sl=atoi(ch); sell[i].je=(long)sell[i].dj*sell[i].sl; } fclose(fp); } voidWriteDat(void) { FILE*fp; inti; fp=fopen("OUT6.DAT","w"); for(i=0;i<100;i++) fprintf(fp,"%s%s%4d%5d%10ld\n",sell[i].dm,sell[i].mc,sell[i].dj,sell[i].sl, sell[i].je); fclose(fp); } 7已知在文件IN7.DAT中存有100个产品销售记录,每个产品销售记录由产品代码dm(字符型4位)、产品名称mc(字符型10位)、单价dj(整型)、数量sl(整型)、金额je(长整型)五部分组成。 其中: 金额=单价×数量。 函数ReadDat()的功能是读取这100个销售记录并存入结构数组sell中。 请编制函数SortDat(),其功能要求: 按金额从大到小进行排列,若金额相同,则按产品代码从大到小进行排列,最终排列结果仍存入结构数组sell中,最后调用函数WriteDat()把结果输出到文件OUT7.DAT中。 注意: 部分源程序已给出。 请勿改动主函数main()、读数据函数ReadDat()和输出数据函数WriteDat()的内容。 【试题程序】 #include #include #include #include #include #defineMAX100 typedefstruct {chardm[5];/*产品代码*/ charmc[
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 三级 上机 考前 题库