A. c語言點菜系統!運行不了,幫忙修改一下~
只是幫你做到可以運行了,不過還有很多的錯誤,貌似還缺少一些功能,還有問題可以追問
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
struct
{
int deskID;
int isUsed; //是否已經有人坐下
}desks[4]; //4張餐桌
struct
{
int numbers;
char* caiName;
float money;
}
caishi[5]={{1,"檸樂",10},//菜單
{2,"煲仔飯",30},
{3,"荷包蛋",20},
{4,"炒牛河",20},
{5,"炒麵",15}};
void cls()//清屏指令
{
system("cls");
}
void pressAnyKey()//重來
{
printf("\r\n按任意鍵繼續...");
getch();
cls();
}
void viewDesk()//查看餐桌狀態
{
int i;
cls();
printf("餐桌號\t狀態\r\n");
for(i=0;i<4;i++)
{
printf("%d\t%s \r\n",desks[i].deskID,desks[i].isUsed);//-----------------------------------去掉==1?
}
printf("\r\n\r\n");
}
void noThisOrder()//輸入錯誤!
{
cls();
printf("輸入錯誤");
pressAnyKey();
}
void changeDesk() //輸入ID改變座位狀態
{
int i,deskID;
cls();
viewDesk();
printf("請輸入你要改變的座位:");
scanf("%d",&deskID);
for(i=0;i<4;i++)
{
if(desks[i].deskID == deskID)
desks[i].isUsed =! desks[i].isUsed;
}
viewDesk();
}
void viewList() //查看菜單
{
int i;//--------------------------------------------------------------補回int
cls();
printf("菜號\t菜名\t價錢\r\n");
for(i=0;i<5;i++)//----------------------------------------------------多了int,這里不是C++
{
printf("%d\t%s\t%.1f\r\n",caishi[i].numbers,caishi[i].caiName,caishi[i].money);
}
pressAnyKey();
}
float addOrder() //點菜
{
int a=0;//------------------------------------------------------------------初始化
float z;
printf("請輸入所要下單的菜號");//-------------------------------------------去了這里的一對大括弧
while(a!=0)//---------------------------------------------------------------應該是!=
{
scanf("%d",&a);
if (a>=0&&a<=5){
switch (a)
{
case 1:printf("1:檸樂 ¥%d\n",caishi[a].money);break;
case 2:printf("2:煲仔飯 ¥%d\n",caishi[a].money);break;
case 3:printf("3:荷包蛋 ¥%d\n",caishi[a].money);break;
case 4:printf("4:炒牛河 ¥%d\n",caishi[a].money);break;
case 5:printf("5:炒麵¥%d\n",caishi[a].money);break;
case 0:printf("0:不點了!\n");break;
}
z=z+caishi[a].money;}//----------------------------------------------下面的大括弧應該移到這里
else printf("請繼續輸入上一個菜號");//-------------------------------少了分號;,顯示的提示也改了一下
}
return(z);//--------------------------------------------------------------這條應該放在這里的
}
void main()
{
int i;
float z;
for(i=0;i<4;i++)
{
desks[i].deskID = i + 1;
desks[i].isUsed = 0;
}
while(1)
{
printf("--------- 操作菜單 ---------\r\n");
printf(" 提示:請用數字鍵選擇操作 \r\n");
printf("----------------------------\r\n");
printf("1.顯示座位狀態\r\n");
printf("2.改變座位狀態\r\n");
printf("3.瀏覽菜牌\r\n");
printf("4.點菜\r\n");
printf("5.結賬\r\n\r\n");
printf("歡迎使用餐飲系統\r\n\r\n");
printf("請輸入相應的命令:");
switch(getch())
{
case '1':viewDesk();break;
case '2':changeDesk();break;
case '3':viewList();break;
case '4':z=addOrder();
case '5':printf("總額:%d",z);
default:noThisOrder();break;
}
}
}
B. 求一個餐館點菜系統的代碼、要C語言的、
依靠Baihi聯系
有時間能處理你的題目
我們可以根據本要求提供一份相當於學生水平的程序
6 | ES:\\
5 | 交易提醒:預付定金有風險
7 |
1 | 北京易軟個人軟體
5 | 全職軟體開發團隊
6 | 十年信譽鑄成品質
1 | 速度專業積累效率
5 | 開發信息管理系統更有優惠
C. 要源代碼 設計實現一個餐廳點餐系統,實現電子點餐。要求實現二級菜單
用C語言實現系統;利用數組或結構體實現上述題目的數據結構設計;系統具有增加、查詢、修改、刪除、排序等基本功能;系統各部分功能的使用採用菜單選擇形式;系統的各個功能模塊要求用函數的形式實現;
D. C語言編寫點菜系統
簡單的點菜系統,可供學習:
#include <stdio.h>
#include <stdlib.h>
#include <errno.h>
#include <string.h>
#include <netdb.h>
#include <sys/types.h>
#include <netinet/in.h>
#include <sys/socket.h>
#define SERVPORT 3333
#define MAXDATASIZE 100 /*每次最大數據傳輸量 */
int main(int argc, char *argv[])
{
int sockfd, recvbytes;
char buf[MAXDATASIZE];
struct hostent *host;
struct sockaddr_in serv_addr;
if (argc < 2)
{ fprintf(stderr,"Please enter the server's hostname!\
"); exit(1); }
if ((host=gethostbyname(argv[1]))==NULL)
{ perror("gethostbyname出錯!"); exit(1); }
if ((sockfd = socket(AF_INET, SOCK_STREAM, 0)) == -1)
{ perror("socket創建出錯!"); exit(1); }
//初始化客戶端
serv_addr.sin_family=AF_INET;
serv_addr.sin_port=htons(SERVPORT);
serv_addr.sin_addr = *((struct in_addr *)host->h_addr);
bzero(&(serv_addr.sin_zero),8);
//connect
if (connect(sockfd, (struct sockaddr *)&serv_addr, sizeof(struct sockaddr)) == -1)
{ perror("connect error!"); exit(1); }
//recv
if ((recvbytes=recv(sockfd, buf, MAXDATASIZE, 0)) ==-1)
{ perror("recv出錯!"); exit(1); }
buf[recvbytes] = '\\0';
printf("Received: %s",buf);
close(sockfd);
return 0;
}
客戶端#include <stdio.h>
#include <stdlib.h>
#include <errno.h>
#include <string.h>
#include <sys/types.h>
#include <netinet/in.h>
#include <sys/socket.h>
#include <sys/wait.h>
#define SERVPORT 3333 /*伺服器監聽埠號 */
#define BACKLOG 10 /* 最大同時連接請求數 */
int main()
{
int sockfd,client_fd,sin_size; /*sock_fd:監聽socket;client_fd:數據傳輸socket */
struct sockaddr_in my_addr; /* 本機地址信息 */
struct sockaddr_in remote_addr; /* 客戶端地址信息 */
//創建一個套接字,PF_INET,流式,
if ((sockfd = socket(AF_INET, SOCK_STREAM, 0)) == -1)
{ perror("socket"); exit(1); }
//初始化服務端
my_addr.sin_family=AF_INET;
my_addr.sin_port=htons(SERVPORT);
my_addr.sin_addr.s_addr = INADDR_ANY;
bzero(&(my_addr.sin_zero),8);
//將套接字地址與所創建的套接字型大小聯系起來
if (bind(sockfd, (struct sockaddr *)&my_addr, sizeof(struct sockaddr)) == -1)
{ perror("bind"); exit(1); }
//願意接收連接
if (listen(sockfd, BACKLOG) == -1)
{ perror("listen"); exit(1); }
while(1)
{
sin_size = sizeof(struct sockaddr_in);
if ((client_fd = accept(sockfd, (struct sockaddr *)&remote_addr, &sin_size)) == -1)
{ perror("accept"); continue; }
printf("received a connection from %s\
", inet_ntoa(remote_addr.sin_addr));
if (!fork()) { /* 子進程代碼段 */
if (send(client_fd, "Hello, you are connected!\
", 26, 0) == -1)
perror("send"); close(client_fd); exit(0); }
close(client_fd); }
return 0;
}
E. 用c語言做一個點菜系統。
你好!
可以按照你的課題要求完成,程序什麼時間要呢
F. 用C語言為學校食堂做一個點菜系統,當用戶選擇自己喜歡的菜,所消費的錢就能顯示出來。 菜譜封面如下:
#include <stdio.h>
void main()
{
int a[4],i,j,m;
char t;
printf(」********************************* \n1.紅燒肉5.0元2.炸雞翅3.0元\n3.炒芹菜2.0元4.五香蛋1.0元\n5.退出\n********************************\n\n」);
printf(「請輸入您點的菜\n」);
for(i=0;i<=3;i++)
{ scanf(「%d」,&a[i]);j=i;
if(i<=2)
{ printf(「是否繼續點菜\n回復Y OR N\n」);
scanf(「%c」,&t);
if(t==Y)
continue;
else if(t==N){j=i;break;}
else {printf(「error,自動結算\n」);j=i;break;}}
}
for(i=0,m=0;i<=j;i++)
m=m+a[i];
printf(「總金額%d\n」,m);
}
//手機編寫,錯誤難免,問題不大,多多包含