大学计算机模拟试题2013,2013大学生计算机等级考试三级网络技术上机试题答案...

本文介绍三个C语言实现的产品销售记录排序算法。第一个算法按产品名称升序,金额升序排序;第二个算法按产品代码降序,金额降序排序;第三个算法按产品代码升序,金额升序排序。所有排序都使用了冒泡排序法,并在排序后将结果保存在结构数组中。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

计算机等级考试三级网络技术上机试题答案 第一类:单价金额

***************************************************************************** 1\已知在文件IN.DAT中存有100个产品销售记录,每个产品销售记录由产品代码dm(字符型4位),产品名称mc(字符型10位),单价dj(整型),数量sl(整型),金额je(长整型)五部分组成。其中:金额=单价*数量计算得出。函数ReadDat()是读取这100个销售记录并存入结构数组sell中。请编制函数SortDat(),其功能要求:

按产品名称从小到大进行排列,若产品名称相等,则按金额从小到大进行排列,最终排列结果仍存入结构数组sell中,

void SortDat()

{int i,j;

PRO xy;

for(i=0;i<99;i++)

for(j=i+1;j<100;j++)

if(strcmp(sell[i].mc,sell[j].mc)>0||strcmp(sell[i].mc,sell[j].mc)==0&&sell[i].je>sell[j].je) {xy=sell[i];sell[i]=sell[j];sell[j]=xy;}

}

************************************************************************** 2\已知在文件IN.DAT中存有100个产品销售记录,每个产品销售记录由产品代码dm(字符型4位),产品名称mc(字符型10位),单价dj(整型),数量sl(整型),金额je(长整型)五部分组成。其中:金额=单价*数量计算得出。函数ReadDat()是读取这100个销售记录并存入结构数组sell中。请编制函数SortDat(),其功能要求:按产品代码从大到小进行排列,若产品代码相同,则按金额从大到小进行排列,最终排列结果仍存入结构数组sell中,最后调用函数WriteDat()把结果输出到文件OUT6.DAT中。

void SortDat()

{ int i,j;

PRO temp;

for(i=0;i<99;i++)

for(j=i+1;j<100;j++)

if (strcmp(sell[i].mc,sell[j].mc)<0)

{ temp=sell[i];

sell [i]=sell[j];

sell[j]=temp;

}

else if(strcmp(sell[i].mc,sell[j].mc)==0)

if(sell[i].je

{ temp=sell[i];

sell[i]=sell[j];

sell[j]=temp;

}

}

****************************************************************************** 3\已知在文件IN.DAT中存有100个产品销售记录,每个产品销售记录由产品代码dm(字符型4位),产品名称mc(字符型10位),单价dj(整型),数量sl(整型),金额je(长整型)五部分组成。其中:金额=单价*数量计算得出。函数ReadDat()是读取这100个销售记录并存入结构数组sell中。请编制函数SortDat(),其功能要求:按产品代码从小到大进行排列,若产品代码相同,则按金额从小到大进行排列,最终排列结果仍存入结构数组sell中,最后调用

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值