首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
已知在数据文件in.dat中存有100个产品销售记录。每个产品销售记录由产品代码dm(字符型4位),产品名称me(字符型10位),单价dj(整型),数量sl(整型),金额je(长整型)五部分组成。其中:金额=单价*数量。函数ReadDat()读取这100个
已知在数据文件in.dat中存有100个产品销售记录。每个产品销售记录由产品代码dm(字符型4位),产品名称me(字符型10位),单价dj(整型),数量sl(整型),金额je(长整型)五部分组成。其中:金额=单价*数量。函数ReadDat()读取这100个
admin
2013-12-10
37
问题
已知在数据文件in.dat中存有100个产品销售记录。每个产品销售记录由产品代码dm(字符型4位),产品名称me(字符型10位),单价dj(整型),数量sl(整型),金额je(长整型)五部分组成。其中:金额=单价*数量。函数ReadDat()读取这100个销售记录并存入结构数组sell中。请编写函数SortDat()。其功能要求:按产品名称从小到大进行排列,若产品名称相同,则按金额从大到小进行排列,最终排列结果仍存入结构数组sell中。最后main()函数调用函数WriteDat()把结果输出到文件out.dat中。
【试题程序】
#include
#include
#include
#define MAX 100
typedef struct{
char dm[5]; /*产品代码*/
char mc[11]; /*产品名称*/
int dh|*单价*;
int sj; /*数量*/
long je; /*金额*/
}PRO;
PR()sell[MAX];
void ReadDat();
void WriteDat();
void SortDat()
{
}
void main()
{
memset(sell,0,sizeof(sell));
ReadDat();
SortDat();
WriteDat();
}
void ReadDat()
{
FILE*fp;
char str[80],ch[11];
int i;
fp=fopen(“in.dat”,“r”);
for(i=0;i<100;i++){
fgets(str,80,fp);
memcpy(sell
.dm,str.4);
memcpy(sell
.me,str+4,10);
memepy(eh.str+14,4);ch[4]:O;
sell
.dj=atoi(ch);
memcpy(ch,str+18,5);ch[5]=0;
sell
.sl=atoi(eh);
sell
.je=(10ng)sell
.d j*sell
.s1)
}
fclose(fp);
}
void WriteDat()
{
FILE*fp;
int i;
fp=fopen(“out.dat”,“W”);
for(i=0;i<100;i++){
[print{(fp,”%,s %, s%,4dg 5d%101d
\n”,sell
.dm,sell
.me,sell
.dj,sell
.sl,
sell
.je);
}
felose(fp);
选项
答案
VOid SortDat() { int i,j; /*定义变量*/ PRO temp; for(i=0li
0; strcmp(sell[i].me,stilEj].me)==0&&sell[i].je< sell~].je) /*判断条件*/ {temp=sell[i]; sell[i]=sell[j]; sell][j]=temp; } }
解析
转载请注明原文地址:https://kaotiyun.com/show/CElZ777K
本试题收录于:
三级数据库技术题库NCRE全国计算机三级分类
0
三级数据库技术
NCRE全国计算机三级
相关试题推荐
有关系S(S#,SNAME,SEX),C(C#,CNAME),SC(S#,C#)。其中S#为学生号,SNAME为学生姓名,SEX为性别,C#为课程号,CNAME为课程名。要查询选修“计算机文化”课的全体男学生姓名的SQL语句是:SELECT
设有关系R(A,B,C,D,E),各属性函数依赖集合有F{A→B,B→C,C→D,C→E}若把关系R分解为R1(A,B,C)和R2(C,D,E)则R2属于第【】范式。
根据关系数据库规范化理论,关系数据库中的关系要满足第一范式,下面“学校”关系中,因哪一个属性而使它不满足第一范式?
若对一个已经排好了序的序列进行排序,在下列4种方法中,哪一种方法比较好?
数据库功能可以分为两部分:前端和后端。前端与后端之间通过【】或应用程序来接口。
用二维表结构表示实体以及实体间联系的数据模型称为【】数据模型。
若用如下的SQL语句创建一个表S: CREATETABLES(S#char(16)NOTNULL: SNAMEchar(8)NOTNULL,SEXchar(2),AGEinteger) 向表S中插入如下行时,哪一行可以被插入,
二维数组A[0…8][0…9],其每个元素占2字节,从首地址400开始,按行优先顺序存放,则元素A[8,5]的存储地址为
用户程序中的输入、输出操作实际上是由哪一项完成?
结构化程序的基本控制结构有顺序、选择、【】。
随机试题
A、Onfoot.B、Bybus.C、Bycar.D、Bybike.A
某患者做的10例窝沟封闭,仅1周后就有4例脱落了,主要原因是
A.大中型药品批发企业和零售连锁企业的质量负责人、药品检验机构部门负责人B.小型药品批发企业和零售连锁企业的质量负责人C.跨地域连锁经营的零售连锁企业的质量负责人D.大中型药品批发企业和零售连锁企业的质量管理机构的负责人E.药品批发企业和零售连锁企
朱某,现年16岁,某高校大二学生,擅长计算机程序开发。在校学习的同时在某外资电脑公司兼职,月薪3000元。3月1日,朱某给其兄寄信,内称愿赠其兄之子12岁的小朱一台电脑,但需其考上重点高中。3月10日,其兄收到该信,次日把信拿回家,交正上初三的小朱看,小朱
目前国际上较广泛采用的工程咨询费用的估算方法是()。
下列选项所描述的对象,哪一项与其他三项不同?()
很多银行网站在用户输入密码时要求使用软键盘,这是为了(29)。
程序排错是排除经测试发现出错的程序中错误的措施,其中测试排错法发现和排除错误的主要手段是利用______。
TheDifferencesBetweenAmericanandBritishEnglishI.IntroductionAmericanEnglishandBritishEnglish:two【T1】ofEnglish【T1
A、Expertly.B、Badly.C、Allright.D、Veryhard.CIhaven’theardanyonecomplainingaboutthewayyoudoyourjob.说明别人对她的工作没意见。
最新回复
(
0
)