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*/