网络技术上机100题.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
网络技术上机100题

产品销售类 1. 已知在文件IN1.DAT中存有100个产品销售记录,每个产品销售记录由产品代码dm(字符型4位)、产品名称mc(字符型10位)、单价dj(整型)、数量sl(整型)、金额je(长整型)五部分组成。其中:金额=单价×数量。函数ReadDat()的功能是读取这100个销售记录并存入结构数组sell中。请编制函数SortDat(),其功能要求:按产品名称从小到大进行排列,若产品名称相同,则按金额从小到大进行排列,最终排列结果仍存入结构数组sell中,最后调用函数WriteDat()把结果输出到文件OUT1.DAT中。 注意:部分源程序已给出。请勿改动主函数main()、读数据函数ReadDat()和输出数据函数WriteDat()的内容。 【试题程序】 #include stdio.h #include memory.h #include string.h #include conio.h #include stdlib.h #define MAX 100 typedef struct { char dm[5] ; /*产品代码*/ char mc[11] ; /*产品名称*/ int dj ; /*单价*/ int sl ; /*数量*/ long je ; /*金额*/ }PRO ; PRO sell [MAX] ; void ReadDat() ; void WriteDat() ; void SortDat() { } main() { memset(sell, 0, sizeof(sell)) ; ReadDat() ; SortDat() ; WriteDat() ; } void ReadDat() { FILE *fp ; char str[80], ch[11] ; int I ; 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) ; } void WriteDat() { FILE *fp; int I ; 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) ; } 【参考答案】 void SortDat() { int I,j; PRO xy; for( i=0;i99;i++) for(j=i+1;j100;j++) { if(sell[i].mcsell[j].mc) /*按产品名称从小到大进行排列*/ {xy=sell[i]; sell[i]=sell[j]; sell[j]=xy; } Elseif((sell[i].mc==sell[j].mc)(sell[i].jesell[j].je)) /*若产品名称相同则按金额从小到大进行排列*/ { xy=sell[i]; sell[i]=sell[j]; sell[j]=xy; } } } 2.已知在文件IN2.DAT中存有100个产品销售记录,每个产品销售记录由产品代码dm(字符型4位)、产品名称mc(字符型10位)、单价dj(整型)、数量sl(整型)、金额je(长整型)五部分组成。其中:金额=单价×数量。函数ReadDat()的功能是读取这100个销售记录并存入结构数组sell中。请编制函数SortDat(),其功能要求:按产品名称从大到小进行排列,若产品名称相同,则按金额从小到大进行排列,最终排列结果仍存入结构数组sell中,最后调用函数WriteDat()把结果输出到文件OUT2.DA

文档评论(0)

asd522513656 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档