三级网络分类汇总

三级网络分类汇总

ID:42812316

大小:74.50 KB

页数:7页

时间:2019-09-21

三级网络分类汇总_第1页
三级网络分类汇总_第2页
三级网络分类汇总_第3页
三级网络分类汇总_第4页
三级网络分类汇总_第5页
资源描述:

《三级网络分类汇总》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、计算机等级考试三级C上机题型分类汇总 第一种:产品销售记录问题:  /*已知在文件IN.DAT中存有100个产品销售记录,每个产品销售记录由产品代码dm(字符型4位),产品名称mc(字符型10位),单价dj(整型),数量sl(整型),金额je(长整型)五部分组成。其中:  金额=单价*数量计算得出。函数ReadDat()读取这100个销售记录并存入结构数组sell中。请编制函数SortDat(),其功能要求:按金额从小到大进行排列,若金额相等,则按产品代码从小到大进行排列,最终排列结果仍存入结构数组sell中。最后main()函数调

2、用函数WriteDat()把结果输出到文件OUT1.DAT中。注意:部分源程序存放在PROG1.C中。以下是引用片段:  #define MAX 100  typedef struct {  char dm[5] ; /* 产品代码 */  char mc[11] ; /* 产品名称 */  int dj ; /* 单价 */  int sl ; /* 数量 */  long je ; /* 金额 */  } PRO ;  函数解析://if((sell.je>sell[j].je)

3、

4、(sell.je==sell[j].je)&&

5、(strcmp(sell.dm,  sell[j].dm)>0))是此题的精华所在理解它就理解了这道题的编程道理  首先sell.je>sell[j].je如果金额大小成立的话,就条件成立,把两个数据换位置,如果前者不成立,就判定金额是否相等,如果相等的话,代码还有大小的话,按从小到大的顺序排列。  这种函数的编程方法,适用于有一定基础的编程者,如果是初学者的话建议用以下函数来表达,此方法是按照题意一部一部来分析的,是比较保守的编程方法。以下是引用片段:  void SortDat()  { int i,j;  PRO swap; 

6、 for(i=0; i < MAX-1; i++)  { for(j=i+1; j < MAX; j++)  if(sell.je>sell[j].je)  {swap=sell; sell=sell[j]; sell[j]=swap;}  else if((sell.je==sell[j].je)&&(strcmp(sell.dm,sell[j].dm)>0))  {swap=sell; sell=sell[j]; sell[j]=swap;}  }  100个产品销售记录排序其余9题说明  1)in.dat内容完全相同。  2)

7、程序也基本雷同,仅排序的要求不一样。  3)考生应熟悉strcmp()函数,否则有的题相当不好处理。  试题变化:  排序要求:  按金额从小到大进行排列,若金额相等,则按产品代码从大到小进行排列相应语句:  if((sell.je>sell[j].je)

8、

9、((sell.je==sell[j].je)&&(strcmp(sell.dm,sell[j].dm)<0)))  排序要求:按金额从大到小进行排列,若金额相等,则按产品代码从小到大进行排列相应语句:if((sell.je

10、

11、(sell.je==sell

12、[j].je)&&(strcmp(sell.dm,sell[j].dm)>0))  排序要求:  按金额从大到小进行排列,若金额相等,则按产品代码从大到小进行排列相应语句:  if((sell.je

13、

14、(sell.je==sell[j].je)&&(strcmp(sell.dm,sell[j].dm)<0))  排序要求:  按产品名称从小到大进行排列,若产品名称相同,则按金额从小到大进行排列  if((strcmp(sell.mc,sell[j].mc)>0)

15、

16、(strcmp(sell.mc,sell[j

17、].mc)==0)&&(sell.je>sell[j].je))  排序要求:  按产品名称从小到大进行排列,若产品名称相同,则按金额从大到小进行排列  if(strcmp(sell.mc,sell[j].mc)>0

18、

19、(strcmp(sell.mc,sell[j].mc)==0)&&(sell.je

20、

21、(strcmp(sell.mc,sell[j].m

22、c)==0)&&(sell.je>sell[j].je))  排序要求:  按产品名称从大到小进行排列,若产品名称相同,则按金额从大到小进行排列  if((strcmp(sell.mc,sell[j].mc)<0)

23、

24、(strcmp(

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。