考试网 >> IT认证 >> 等级 >> 等级动态 >> 最新全国计算机等级考试三级(C语言)上机考试试题总(1)

最新全国计算机等级考试三级(C语言)上机考试试题总(1)

发布时间:2006-07-25 11:59     点击:
分页:[1] 2 3 4  下一页

第一种: 产品销售记录问题: 

 /* 已知在文件IN.DAT中存有100个产品销售记录, 每个产品销售记录由产品代码dm(字符型4位), 产品名称mc(字符型10位), 单价dj(整型), 数量sl(整型), 金额je(长整型)五部分组成。 其中:

 金额=单价*数量计算得出。函数ReadDat( )读取这100个销售记录并存入结构数组sell中。请编制函数SortDat( ), 其功能要求: 按金额从小到大进行排列, 若金额相等, 则按产品代码从小到大进行排列, 最终排列结果仍存入结构数组sell中。最后main( )函 数调用函数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)||(sell.je==sell[j].je)&&(strcmp(sell.dm, 

 sell[j].dm)>0))是此题的精华所在理解它 就理解了这道题的编程道理 

 首先sell.je>sell[j].je如果金额大小成立的话,就条件成立,把两个数据换位置,如果前者不成立,就判定金额是否 相等,如果相等的话,代码还有大小的话,按从小到大的顺序排列。

 这种函数的编程方法,适用于有一定基础的编程者,如果是初学者的话建议用以下函数来表达, 此方法是按照题意一部一部来分析的,是比较保守的编程方法。

 void SortDat()

 { int i,j;

 PRO swap;

 for(i=0; i < MAX-1; i++)

 { for(j=i+1; j < MAX; j++)
分页:[1] 2 3 4  下一页
版权申明:未经书面授权请勿转载本站信息!!作品版权归所属媒体与作者所有!!
发表评论: 匿名发表 用户名: 查看评论
您将承担一切因您的行为、言论而直接或间接导致的民事或刑事法律责任
留言板管理人员有权保留或删除其管辖留言中的任意内容
本站提醒:不要进行人身攻击。谢谢配合。
在本站搜索相关信息
2003-2005 Ksw123.com All Rights Reserved. - TOP
Copyright © 2006 Ksw123.com. All rights reserved.中国考题网 版权所有