C语言大作业怎么做

C语言大作业怎么做,第1张

给你个大概思路~~~~~

1。把每个学生的的信息先组合成一个结构体

struct

Student

{

……},

然后就用它来定义学生,

struct

Student

stu[100](有能力的话建义用动态内存的链表结构,不明白当我没说)

2。“自顶向下,逐步求精”,把各个功能写成各个函数,如添加,删除,查询,退出……(看你自己了,这正是C语言的模块化思想

3。主函数就是打出这些选择,让USER

去选,然后调用相应的函数去执行,完了又回到主菜单,以此循环

如果能使用图形的界面,增加动画之类的会更好的(呵呵,不会当我没说~~~~)

输入十名顾客的信息到结构体数组中,最后统计这十名中购买商品总额最大的顾客,将他的信息打印输出。

//并按照下列各式把信息存入到customer.txt中:

//0001 Kate 5 822.8

//0002 Jame 7 2761.9

//2011.1.11 11:37

#include<stdio.h>

#include<math.h>

#define CST_NUM 10//宏定义客户数目

struct customer

{

int num

char name[20]

int amount

float value

}cst[CST_NUM]//定义结构体customer,并声明结构体数组cst[CST_NUM].

void printline(void)

void sort_cst(struct customer[],int)

void print_cst(struct customer[],int)

void main(void)

{

FILE *f1//声明文件指针

int h=sin(0)//为编译器装载float类型

int i

for(i=0i<CST_NUMi++)//从键盘读取客户信息

{

printline()

printf("请输入第%d名顾客的编号",i+1)

scanf("%d",&cst[i].num)

putchar('\n')

fflush(stdin)//清流

printf("请输入第%d名顾客的姓名",i+1)

scanf("%s",cst[i].name)

putchar('\n')

fflush(stdin)//清流

printf("请输入第%d名顾客的商品数量",i+1)

scanf("%d",&cst[i].amount)

putchar('\n')

printf("请输入第%d名顾客的商品总额",i+1)

scanf("%f",&cst[i].value)

putchar('\n')

fflush(stdin)//清流

}

sort_cst(cst,CST_NUM)//客户信息排序

print_cst(cst,CST_NUM)//将客户信息输出至屏幕

f1=fopen("customer.txt","w")//打开文件

fprintf(f1,"客户编号 客户姓名 商品数量 商品总额\n")

for(i=0i<CST_NUMi++)

{

fprintf(f1,"%5d%12s%10d%10.1f\n",cst[i].num,cst[i].name,cst[i].amount,cst[i].value)//存入客户信息

}

fclose(f1)//关闭文件

getch()

}

void sort_cst(struct customer cst[],int cst_num)//自定义函数:客户信息排序

{

int i,j

struct customer temp

for(i=0i<cst_numi++)

{

for(j=0j<cst_numj++)

{

if(cst[i].value>cst[j].value)

{

temp=cst[i]

cst[i]=cst[j]

cst[j]=temp

}

} }

}

void print_cst(struct customer cst[],int cst_num)//自定义函数:客户信息显示

{

int i

printline()

printf("客户编号 客户姓名 商品数量 商品总额\n")

for(i=0i<cst_numi++)

{

printf("%5d",cst[i].num)

printf("%12s",cst[i].name)

printf("%10d",cst[i].amount)

printf("%10.1f\n",cst[i].value)

}

printline()

}

void printline(void)//自定义函数:画线

{

int i

printf("\n")

for(i=0i<50i++)

{

printf("_")

}

printf("\n")

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12082724.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存