首页 新闻 会员 周边 捐助

求助! 实在是难住了!

0
悬赏园豆:200 [已解决问题] 解决于 2013-12-05 22:43

有一个文件shop.dat,在该文件中以二进制方式存放了X个用于表示超市商品销
售记录的结构体类型数据。结构体的声明如下:
struct Sales
{
    int ID;//商品编码
    char name[30];//商品名称
    int  num;//商品数量
    float price;//商品单价
}
编写一个函数,将shop.dat 文件中的数据读出,并且构建1 个商品销售记录数组A;
编写一个函数,删除上述所生成数组A 中单价小于4000 元的商品销售记录;
编写一个函数,将经过上述处理的数组A 按照商品编码进行递增排序,并
将排序后的全部结果显示在屏幕上,每种商品的数据占一行,显示格式为:
111 IPad2 2 4688.00
122 Iphone4S 3 5899.00

求大神实现简单的代码!

ken某某的主页 ken某某 | 初学一级 | 园豆:22
提问于:2013-12-04 21:19
< >
分享
最佳答案
0

都是C/C++的基本操作,但怕是不太可能找到现成的答案,我这有个差不多的,也可帮你改,可加我QQ:1561724180

收获园豆:50
LiuKaiFa | 小虾三级 |园豆:1491 | 2013-12-05 09:00
其他回答(5)
0

关键是哪块你不会呢?别人帮你全写出来,这也不现实啊

收获园豆:50
空明流光 | 园豆:111 (初学一级) | 2013-12-04 21:40

怎么写.h文件啊。 我不知道该用什么啊!

支持(0) 反对(0) ken某某 | 园豆:22 (初学一级) | 2013-12-04 21:41

@亢某某: 原来是C++啊,我不是很熟,会一点,我主修C#VB。思路如下:

1.你先以字节方式把这个.dat文件读到一个变量中,然后获取Sale对象大小,定义Sales类型的指针把每一个Sale对象都读出来,也就是反序列化。dat文件的大小应该是Sale大小的倍数。

2. 然后就按照你的问题里叙述的那样一步步往下写。

C++中未必需要.h文件呀,.h文件里的内容完成可以写在.cpp中的呀,.h只是将经常使用的东西写在里面以便重用而已呀!

支持(0) 反对(0) 空明流光 | 园豆:111 (初学一级) | 2013-12-04 21:50

@沧海一杰: 这道题要求用c语言写! 大哥,帮帮忙吧,小弟十分感谢!

支持(0) 反对(0) ken某某 | 园豆:22 (初学一级) | 2013-12-04 22:11

@亢某某: 对不起,恕我爱莫能助。首先我没有开发环境,其次我已经在被窝里了。休息吧,这么难,明天再弄吧

支持(0) 反对(0) 空明流光 | 园豆:111 (初学一级) | 2013-12-04 22:23
0

头文件的话,就相当于比如你用了一个函数,你就到百度找这个函数在哪个头文件里面,然后引用就行了。

收获园豆:50
angelshelter | 园豆:9914 (大侠五级) | 2013-12-04 22:24
0

你应该找一个这方面的系列好好学习学习

junjieok | 园豆:779 (小虾三级) | 2013-12-04 23:11
0

一个文件流,按这个结构体格式读内容。然后把内在放在一个数组里。

 

自己不动手,这也来求助。早点转行吧,计算机不适合你。浪费生命呢

硬盘很大 | 园豆:16 (初学一级) | 2013-12-05 08:10
0

只能给你是说下思路

第一步建一个list<Sales> 数组,通过文件流读取内容到数组中,

第二步再建一个list<Sales> 数组,for循环判断第一个数组单价大于4000的放入第二个数组,‘

第三步把第一个数组 按照商品编码进行递增排序再显示出来就OK了

收获园豆:50
夜&枫 | 园豆:236 (菜鸟二级) | 2013-12-05 08:57
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册