1. 怎么用C编辑超市购物管理系统求详细的代码
大理石基地哦啊是的
2. 运用c语言程序写一个超市收银情况
#include <stdio.h>
#include <stdlib.h>
#define DIS 0.7
typedef struct buyrecond{
int id; //序号
char name[20]; //商品名称
float unitprice; //单价
int num; //数量
} BuyRecond;
typedef struct buylist{
BuyRecond *list;
int maxSize;
int size;
} BuyList;
//建立线性表
BuyList *createList(int maxsize);
void destroyList(BuyList *list);
//向表内添加元素
int appendRecond(BuyList *list,BuyRecond *recond);
//显示线性表
void displayList(BuyList *list);
int main()
{
int e;
BuyList *buyTab;
buyTab = createList(3);
e=1;
while(e!=0){
BuyRecond rec;
printf("输入第%d种商品名称(输入-1结束输入):",e);
gets(rec.name);
if(rec.name[0]=='-' && rec.name[1]=='1' && rec.name[2]=='\0')
break;
printf("输入第%d种商品单价:",e);
scanf("%f",&rec.unitprice);
printf("输入第%d种商品数量:",e);
scanf("%d",&rec.num);
getchar();
if(!appendRecond(buyTab,&rec))
break;
}
displayList(buyTab);
destroyList(buyTab);
getchar();
return 0;
}
BuyList *createList(int maxsize)
{
BuyList *pl = (BuyList *)malloc( sizeof(BuyList) );
pl->list = (BuyRecond *)calloc(maxsize, sizeof(BuyRecond));
pl->size = 0;
pl->maxSize = maxsize;
return pl;
}
void destroyList(BuyList *list)
{
free( list->list );
free( list );
}
int appendRecond(BuyList *list,BuyRecond *recond)
{
if(list->size == list->maxSize){
BuyRecond *p = (BuyRecond *)calloc(list->size * 2, sizeof(BuyRecond));
if(p==NULL){
printf("内存分配失败!无法添加元素。\n");
return 0;
}
memcpy(p, list->list, list->size*sizeof(BuyRecond));
list->maxSize = list->size * 2;
free(list->list);
list->list = p;
}
recond->id=list->size+1;
list->list[list->size]=*recond;
list->size++;
return 1;
}
void displayList(BuyList *list)
{
int i;
float x;
printf("\n%-4s %c%-20s %10s %10s %10s %10s\n",
"项次",'|',"商品名称","单价","数量","小计","优惠价");
for(i=0;i<list->size;++i){
x=(list->list[i].num)*(list->list[i].unitprice);
printf("%-4d %c%-20s %10.0f %10d %10.2f %10.2f\n",
list->list[i].id,'|',list->list[i].name,
list->list[i].unitprice,list->list[i].num,
x,x*DIS);
}
printf("总计(%d项)\n",list->size);
}
3. 超市购物结帐系统 C语言程序
要买的
4. 用c语言设计一个超市管理系统程序,要求能添加商品,能查询商品,能购买商品,能展示商品。
超市管理系统
*/
#include<stdio.h>
#include<string.h>
//欢迎界面//
void welcome();
//功能浏览//
void mainMenu();
//购物结算//
void saleCalc();
//进货管理//
void addGoods();
//修改信息
void updateGoods();
//显示商品//
void showGoods();
//删除商品//
void deleteGoods();
//查询商品//
int searchGoods();
//购买结算
void saleCalc();
//更新库存//
void updateGoodsNum(int number,char name[50]);
//结构体
struct goods
{
char name[50];//商品名称
int num;//商品数量
float price;//商品价格
};
int count;//商品种类数量
goods list[1000];//声明goods的变量数组
char name[50];
void main()//主函数
{
int num;
welcome();
do{
mainMenu();
printf("请选择功能:");
scanf("%d",&num);
switch(num)
{
case 1:
saleCalc();
break;
case 2:
addGoods();
break;
case 3:
updateGoods();
break;
case 4:
showGoods();
break;
case 5:
deleteGoods();
break;
case 0:
break;
}
}while(num!=0);
}
void welcome()//欢迎界面
{
printf("-------------------------------------------------------------------------\n");
printf("****************欢迎使用超市管理系统*******************\n");
printf("-------------------------------------------------------------------------\n");
}
void mainMenu()//功能浏览界面
{
printf("****1.购物结算****\n");
printf("****2.进货管理****\n");
printf("****3.修改商品****\n");
printf("****4.显示商品****\n");
printf("****5.删除商品****\n");
printf("****0.退出系统****\n");
}
//查询信息
int searchGoods()//查询商品信息
{
printf("请输入您要购买商品的名字:");
scanf("%s",name);
for(int i=0;i<count;i++)
{
if(stricmp(name,list[i].name)==0)
{
return 1;
}
else
{
printf("对不起了,没有找到%c商品\n",name);
return -1;
}
}
}
//购物结算
void saleCalc()//购物结算
{
int number,i,s;
float priceGoods=0,sum=0,money;
char c=' ';
s=searchGoods();
do
{
if(s==-1)
{
s=searchGoods();
}else
{
printf("该商品b存在");
for(i=0;i<count;i++)
{
if(strcmp(name,list[i].name)==0)
{
priceGoods=list[i].price;
break;
}
}
printf("请输入您要购买的数量:");
scanf("%d",&number);
sum=priceGoods*number;
updateGoodsNum(-number,name);
printf("是否继续购买(y/n)");
fflush(stdin);
c=getchar();
}
}while(c=='y'||c=='Y');
printf("本次消费总金额为:%.2f",sum);
printf("请输入您的实际付款金额:");
scanf("%f",&money);
printf("找零:%.2f\n",money-sum);
}
//进货管理
void addGoods() //商品的录入
{
int i=0;
char c=' ';
do
{
printf("请输入商品的名称:");
fflush(stdin);
scanf("%s",list[i].name);
printf("请输入商品的数量:");
scanf("%d",&list[i].num);
printf("请输入商品的单价:");
scanf("%f",&list[i].price);
printf("是否继续(y/n)");
fflush(stdin);
c=getchar();
}while(c=='Y'||c=='y');
}
//更新库存
void updateGoodsNum(int number,char name[50])
{
int i;
for(i=0;i<count;i++)
{
list[i].num+=number;//list[i].num=list[i].num+number
}
}
//显示货物信息
void showGoods()
{
printf("商品名称\t数量\t单价\n");
for(int i=0;i<count;i++)
{
printf("%s\t%d\t%.2f\n",list[i].name,list[i].num,list[i].price);
}
}
//修改商品信息
void updateGoods()
{
int i;
printf("请输入您要修改商品的名字:");
scanf("%s",&name);
for(i=0;i<count;i++)
{
if(strcmp(name,list[i].name)==0)
{
printf("请输入新的商品名字:");
scanf("%s",list[i].name);
printf("请输入您要修改商品的数量:");
scanf("%d",list[i].num);
printf("请输入您要修改商品的单价:");
scanf("%f",list[i].price);
}
else
{
printf("对不起,没有找到该商品信息!");
}
}
}
//删除商品信息
void deleteGoods()
{
int index=-1;
printf("请输入您要删除的商品名字:");
scanf("%s",name);
for(int i=0;i<count;i++)
{
if(strcmp(name,list[i].name)==0)
{
index=i;
}
}if(index==-1)
{
printf("对不起!没有找到您要删除的商品信息!");
}
else{
for(int i=index;i<count;i++)
{
list[i]=list[i+1];
}
}
}
5. C语言中模拟超市购物计算价格
我自己设计了一个,你试试!操作结束后按Ctrl+z显示清单。使用方面有什么不懂可以问我! #include "stdio.h" typedef struct{ char node[100]; /*商品编号*/ char name[100];/*商品名称*/ float price;/*商品价格*/ } datatype; typedef struct node{ datatype food[100]; int len;/*存放商品总数*/ }SPku; datatype Input(void) {datatype x;<br/> scanf("%s %s %f",x.node,x.name,&x.price);<br/> printf("输入完毕!");<br/>return x;<br/>} void create(SPku *r) { int i; printf("\n输入商品总数:"); scanf("%d",&r->len); for(i=0;i<r->len;i++) {printf("\n输入商品编号 名称 价格:"); <br/> r->food[i]=Input();<br/>...
6. C++ 编写超市购物程序(虚函数)
有一来些吧,但是要看什么情况了源,如果要是都是一些小程序,其实没有多大的差别,但是如果你加入类,虚函数等c++中的特性之后,那编译运行速度肯定就慢了,这也是没办法的事,因为c++是面向对象的语言,不过效率不会影响太多,差不多就是因为c++兼容c,所以用c++的编译器编译也可以编译c语言,你要追求效率,那就用汇编呗,c++主要是用来写大型程序,如果用c写大型程序,能把人累死,而且代码量很大,同样用c++写,就能减少很多代码,这样运行起来效率其实差不了多少,c++大约是c的%90,而java则是c++的%50,c++和c都是很优秀的,其实真正的差别在于Coder的水平。就像作者的水平之差一样。c/c++都很优秀,认真学一下吧。不要在语言比较方面花费太多的口水。谁在乎剑圣用什么剑?
7. 求大神用C编写一个超市商品管理系统
超市管理系统
*/
#include<stdio.h>
#include<string.h>
//欢迎界面//
voidwelcome();
//功能浏览//
voidmainMenu();
//购物结算//
voidsaleCalc();
//进货管理//
voidaddGoods();
//修改信息
voipdateGoods();
//显示商品//
voidshowGoods();
//删除商品//
voiddeleteGoods();
//查询商品//
intsearchGoods();
//购买结算
voidsaleCalc();
//更新库存//
voipdateGoodsNum(intnumber,charname[50]);
//结构体
structgoods
{
charname[50];//商品名称
intnum;//商品数量
floatprice;//商品价格
};
intcount;//商品种类数量
goodslist[1000];//声明goods的变量数组
charname[50];
voidmain()//主函数
{
intnum;
welcome();
do{
mainMenu();
printf("请选择功能:");
scanf("%d",&num);
switch(num)
{
case1:
saleCalc();
break;
case2:
addGoods();
break;
case3:
updateGoods();
break;
case4:
showGoods();
break;
case5:
deleteGoods();
break;
case0:
break;
}
}while(num!=0);
}
voidwelcome()//欢迎界面
{
printf("------------------------------------------------------------------------- ");
printf("****************欢迎使用超市管理系统******************* ");
printf("------------------------------------------------------------------------- ");
}
voidmainMenu()//功能浏览界面
{
printf("****1.购物结算**** ");
printf("****2.进货管理**** ");
printf("****3.修改商品**** ");
printf("****4.显示商品**** ");
printf("****5.删除商品**** ");
printf("****0.退出系统**** ");
}
//查询信息
intsearchGoods()//查询商品信息
{
printf("请输入您要购买商品的名字:");
scanf("%s",name);
for(inti=0;i<count;i++)
{
if(stricmp(name,list[i].name)==0)
{
return1;
}
else
{
printf("对不起了,没有找到%c商品 ",name);
return-1;
}
}
}
//购物结算
voidsaleCalc()//购物结算
{
intnumber,i,s;
floatpriceGoods=0,sum=0,money;
charc='';
s=searchGoods();
do
{
if(s==-1)
{
s=searchGoods();
}else
{
printf("该商品b存在");
for(i=0;i<count;i++)
{
if(strcmp(name,list[i].name)==0)
{
priceGoods=list[i].price;
break;
}
}
printf("请输入您要购买的数量:");
scanf("%d",&number);
sum=priceGoods*number;
updateGoodsNum(-number,name);
printf("是否继续购买(y/n)");
fflush(stdin);
c=getchar();
}
}while(c=='y'||c=='Y');
printf("本次消费总金额为:%.2f",sum);
printf("请输入您的实际付款金额:");
scanf("%f",&money);
printf("找零:%.2f ",money-sum);
}
//进货管理
voidaddGoods()//商品的录入
{
inti=0;
charc='';
do
{
printf("请输入商品的名称:");
fflush(stdin);
scanf("%s",list[i].name);
printf("请输入商品的数量:");
scanf("%d",&list[i].num);
printf("请输入商品的单价:");
scanf("%f",&list[i].price);
printf("是否继续(y/n)");
fflush(stdin);
c=getchar();
}while(c=='Y'||c=='y');
}
//更新库存
voipdateGoodsNum(intnumber,charname[50])
{
inti;
for(i=0;i<count;i++)
{
list[i].num+=number;//list[i].num=list[i].num+number
}
}
//显示货物信息
voidshowGoods()
{
printf("商品名称 数量 单价 ");
for(inti=0;i<count;i++)
{
printf("%s %d %.2f ",list[i].name,list[i].num,list[i].price);
}
}
//修改商品信息
voipdateGoods()
{
inti;
printf("请输入您要修改商品的名字:");
scanf("%s",&name);
for(i=0;i<count;i++)
{
if(strcmp(name,list[i].name)==0)
{
printf("请输入新的商品名字:");
scanf("%s",list[i].name);
printf("请输入您要修改商品的数量:");
scanf("%d",list[i].num);
printf("请输入您要修改商品的单价:");
scanf("%f",list[i].price);
}
else
{
printf("对不起,没有找到该商品信息!");
}
}
}
//删除商品信息
voiddeleteGoods()
{
intindex=-1;
printf("请输入您要删除的商品名字:");
scanf("%s",name);
for(inti=0;i<count;i++)
{
if(strcmp(name,list[i].name)==0)
{
index=i;
}
}if(index==-1)
{
printf("对不起!没有找到您要删除的商品信息!");
}
else{
for(inti=index;i<count;i++)
{
list[i]=list[i+1];
}
}
}
8. 用C语言设计一个超市购物打印系统
我自己设计了一个,你试试!操作结束后按Ctrl+z显示清单。使用方面有什么不懂可以问我!
#include "stdio.h"
typedef struct{
char node[100]; /*商品编号*/
char name[100];/*商品名称*/
float price;/*商品价格*/
} datatype;
typedef struct node{
datatype food[100];
int len;/*存放商品总数*/
}SPku;
datatype Input(void)
{datatype x;<br/> scanf("%s %s %f",x.node,x.name,&x.price);<br/> printf("输入完毕!");<br/>return x;<br/>}
void create(SPku *r)
{ int i;
printf("\n输入商品总数:");
scanf("%d",&r->len);
for(i=0;i<r->len;i++)
{printf("\n输入商品编号 名称 价格:"); <br/> r->food[i]=Input();<br/> }
}
int strlen(char s[])
{int i;<br/> for(i=0;i<s[i];i++);<br/> return i;<br/> }
int compare(char y[],char s[])
{int i;<br/>if(strlen(y)!=strlen(s))<br/> return 0;<br/>else<br/> for(i=0;i<strlen(y);i++)<br/> if(y[i]!=s[i])<br/> return 0;<br/> return 1;<br/>}
void Output(datatype f)
{
printf("\n%s %s %f",f.node,f.name,f.price);
}
int judge(SPku *r,char nd[])
{ int i;
for(i=0;i<r->len;i++)
if(compare(r->food[i].node,nd))
{ Output(r->food[i]) ;
return i;
}
return 1000;
}
main()
{SPku r,n;<br/> char nd[100];<br/> int k,j,i,y=0;<br/> printf("\n开始创建数据库...");<br/> create(&r);<br/> printf("\n*********商品总单*********");<br/> for(i=0;i<r.len;i++)<br/> Output(r.food[i]);<br/> printf("\n**************************");<br/>while((j=getchar())!=EOF)<br/> {<br/> printf("\n扫描输入商品的编号:");<br/> gets(nd);<br/> printf("输入成功!");<br/> k=judge(&r,nd);<br/> if(k==1000) <br/> printf("\n无此商品...");<br/> else<br/> n.food[y++]=r.food[k];<br/> }
printf("\n*********商品清单*********");
n.len=y;
for(i=0;i<n.len;i++)
Output(n.food[i]);
}
9. 关于超市消费的~用C语言编写
兄弟,如此可怜的悬赏,实在太没有吸引力了啊
10. 我用C语言编写超市购物结帐系统。有一个模块是按商品名称排序。帮我做一下,谢谢各位了。
按名称排序,我想你肯定是用一个链表把所有的商品信息保存起来,商品名称肯定是用个字符串数组保存起来的,这样你就可以写个函数譬如:
node *arrangement(node *p)
{
}/*node*/