有一个文件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
求大神实现简单的代码!
都是C/C++的基本操作,但怕是不太可能找到现成的答案,我这有个差不多的,也可帮你改,可加我QQ:1561724180
关键是哪块你不会呢?别人帮你全写出来,这也不现实啊
怎么写.h文件啊。 我不知道该用什么啊!
@亢某某: 原来是C++啊,我不是很熟,会一点,我主修C#VB。思路如下:
1.你先以字节方式把这个.dat文件读到一个变量中,然后获取Sale对象大小,定义Sales类型的指针把每一个Sale对象都读出来,也就是反序列化。dat文件的大小应该是Sale大小的倍数。
2. 然后就按照你的问题里叙述的那样一步步往下写。
C++中未必需要.h文件呀,.h文件里的内容完成可以写在.cpp中的呀,.h只是将经常使用的东西写在里面以便重用而已呀!
@沧海一杰: 这道题要求用c语言写! 大哥,帮帮忙吧,小弟十分感谢!
@亢某某: 对不起,恕我爱莫能助。首先我没有开发环境,其次我已经在被窝里了。休息吧,这么难,明天再弄吧
头文件的话,就相当于比如你用了一个函数,你就到百度找这个函数在哪个头文件里面,然后引用就行了。
你应该找一个这方面的系列好好学习学习
一个文件流,按这个结构体格式读内容。然后把内在放在一个数组里。
自己不动手,这也来求助。早点转行吧,计算机不适合你。浪费生命呢
只能给你是说下思路
第一步建一个list<Sales> 数组,通过文件流读取内容到数组中,
第二步再建一个list<Sales> 数组,for循环判断第一个数组单价大于4000的放入第二个数组,‘
第三步把第一个数组 按照商品编码进行递增排序再显示出来就OK了