首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
已知在数据文件in.dat中存有100个产品销售记录,每个产品销售记录由产品代码dm(字符型4位)、产品名称mc(字符型10位)、单价dj(整型)、数量sl(整型)、金额je(长整型)五部分组成。其中:金额由公式金额=单价*数量计算得出。函数ReadDat
已知在数据文件in.dat中存有100个产品销售记录,每个产品销售记录由产品代码dm(字符型4位)、产品名称mc(字符型10位)、单价dj(整型)、数量sl(整型)、金额je(长整型)五部分组成。其中:金额由公式金额=单价*数量计算得出。函数ReadDat
admin
2013-12-10
30
问题
已知在数据文件in.dat中存有100个产品销售记录,每个产品销售记录由产品代码dm(字符型4位)、产品名称mc(字符型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 dj; /*单价*/
int sl; /*数量*/
long je; /*金额*/
}PR();
PRO 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
.mc,str+4,10);
memcpy(ch,str+14,4);ch[4]=0;
sell
.dj=atoi(eh);
memcpy(ch.str+18,5)ch[5]=0;
sell
.sl=atoi(ch);
sell
.je=(10ng)sell
.dj*sell
.sl!
}
fclose(fp);
}
void WriteDat()
{
FILE*fp;
int i;
fp=fopen(“out.dat”.”w”);
for(i=0;i<100li++){
fprintf(fp,”%s 9,6 s%4d%5d%101d
\n”,sell
.dm,sell
.me,sell
.dj.sell
.s1.
sell
.je);
}
fclose(fp);
}
选项
答案
void SortDat() {int i,j; /*定义变量*/ PR0 temp; for(i=0;i
sell[j].je||sell[i].je== sell[i].je&.&strcmp(sell[i].dm,sell[i].din)<0) /*判断条件*/ {temp:sell[i]; sell[i]=sell[j]; sen[i]==temp } }
解析
转载请注明原文地址:https://kaotiyun.com/show/zblZ777K
本试题收录于:
三级数据库技术题库NCRE全国计算机三级分类
0
三级数据库技术
NCRE全国计算机三级
相关试题推荐
设有关系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属于第【】范式。
数据库管理系统(DBMS)提供数据定义语言(DDL)及它的翻译程序,DDL定义数据库的模式、外模式和内模式,并通过翻译程序分别翻译成相应的目标模式,存放在【】。
如果数据库中只包含成功事务提交的结果,此数据库状态就称为【】。
当关系模式R(A,B)已属于3NF,下列说法中哪一个是正确的?
在关系数据库中,表(table)是三级模式结构中的
【】不允许关系模式的属性之间有这样的非平凡函数依赖X→Y,其中X不包含码,Y是非主屑性。
SQL的数据定义功能包括
有关系模式A(C,T,H,R,S),其中各属性的含义是: C:课程T:教员H:上课时间R:教室S:学生 根据语义有如下函数依赖集: P={C→T,(H,R)→C,(H,T)→R,(H.S)→R} 关系模式A的码是
随机试题
Bynomeans______yourthree-year-oldsonaloneathome.
金属基底冠要顺同一个方向打磨的目的是A.便于操作B.放置磨料成分污染表面C.利于形成氧化膜D.防止瓷层变色E.形成较为规则的表面,防止瓷层烧结时产生气泡
下列各项中,属于利得的有()。
对于因企业合并形成的商誉,如果不存在减值迹象,则不用在每年年度终了进行减值测试。()
根据利率的风险结构理论,各种债权工具的流动性之所以不同,是因为在价格一定的情况下,它们的()不同。
蒙台梭利的教育方法包括的要素有()
A.likeB.throughC.consistsofA.whatsubstancesyourtapwater【T1】______B.whilethewaterstreams【T2】______pipeli
打开考生文件夹下的表单two,选择“表单”菜单中的“新建方法程序”命令,在“新建方法程序”对话框中,为该表单新建一个test方法,然后双击表单,选择该方法编写代码,该方法的功能是使“测试"按钮变为不可用,即将该按钮的Enabled属性设置为“.F.”。
Lotsofweaponsareonshowinmuseums.Wewenttoacinemalastweek.
AllIcansayaboutthem______thattheyarethemostcompetentengineersIhaveeverseen.
最新回复
(
0
)