Ⅰ c語言編程做一個簡單的菜單
#include<stdio.h>
#include<stdlib.h>
voidmenu()//菜單繪制
{
printf("--------------------------------------- ");
printf(" 0.退出 ");
printf(" 1.錄入信息 ");
printf(" 2.查找信息 ");
printf(" 3.刪除信息 ");
printf(" 4.瀏覽信息 ");
printf(" 5.有其他疑問找群主")
printf(" 6.C++8群:491994603")
printf("--------------------------------------- ");
}
voidkeyDown()//按鍵處理
{
intchoice;
scanf("%d",&choice);
switch(choice)
{
case0:
printf("退出程序 ");
Sleep(2000);
return0;
case1:
//調用菜單1實現函數
break;
case2:
//調用菜單2實現函數
break;
case3:
//調用菜單3實現函數
break;
case4:
//調用菜單4實現函數
break;
default:
printf("輸入錯誤 ");
}
system("pause");
return0;
}
intmain()
{
while(1)
{
menu();
keyDown();
system("cls");
}
return0;
}
Ⅱ 怎麼用C語言編寫菜單
#include "stdio.h"
#include "stdlib.h"
#include "dos.h"
#include "windows.h"
char choice1;
void main()
{
void menue1();
printf("歡迎進入Ben的作業查詢系統!");
menue1();
}
void menue1()
{
void choicemenue1();
printf("\n請按照以下列表選擇您想要查看的章節:");
printf("\n編號\t章節\n 1\t第一章\n 2\t第二章\n");
printf("請輸入編號進行選擇:");
choicemenue1();
}
void choicemenue1()
{
choice1=getch();
switch(choice1)
{
void menuechapter1();
void menuechapter2();
void menue1();
case '1':menuechapter1();break;
case '2':menuechapter2();break;
default:printf("\n輸入錯誤!請重新選擇!\n"),menue1();
}}
void menuechapter1()
{
char choiceex;
printf("\n您選擇的是第%c章",choice1);
printf("\n現在請選擇本章節的題目。");
printf("\n請按照以下列表選擇題目:");
printf("\n編號\t題目編號\n1\t第1題\n2\t第2題\n");
printf("請選擇:");
switch(choiceex=getch())
{
void c1_1();
void c1_2();
case '1':c1_1();break;
case '2':c1_2();break;
default:
printf("\n你個白痴!這也能選錯!不讓你重選了!");
printf("\n按任意鍵以退出!");
getch();
exit(0);
}
}
void menuechapter2()
{
char choiceex;
printf("\n您選擇的是第%c章",choice1);
printf("\n現在請選擇本章節的題目。");
printf("\n請按照以下列表選擇題目:");
printf("\n編號\t題目編號\n1\t第1題\n2\t第2題\n");
printf("\n請選擇:");
switch(choiceex=getch())
{
void c2_1();
void c2_2();
case '1':c2_1();break;
case '2':c2_2();break;
default:
printf("\n你個白痴!這也能選錯!不讓你重選了!");
printf("\n按任意鍵以退出!");
getch();
exit(0);
}
}
void c1_1()
{
char howtorun;
printf("現在請選擇考察方式:");
printf("\n編號\t考察方式\n 1\t運行程序\n 2\t查看源代碼\n 3\t返回主菜單\n 4\t退出程序\n");
printf("請選擇:");
switch(howtorun=getch())
{
void runc1_1();
void menue1();
case '1':runc1_1();break;
case '2':printf("\n"),system("type \\caidan\\chapter1\\c1_1.c"),printf("\n"),getch();break;
case '3':menue1();break;
case '4':exit(0);break;
default:
printf("程序即將結束!哈哈哈……");
printf("按任意鍵以結束程序!");
getch();
exit(0);
}}
void c1_2()
{
printf("c1_2 is OK!");
}void c2_1()
{
printf("c2_1 is OK!");
}void c2_2()
{
printf("c2_2 is OK!");
}
void runc1_1()
{
int a,b,max;
printf("\nPlease input two integer numbers:");
printf("a=?,b=?\n");
scanf("%d,%d",&a,&b);
max=a>b?a:b;
printf("The max number is %d",max);
}
大概就是這樣做的。。
Ⅲ C語言菜單點菜並計算價格問題
輸出的格式對齊你自己可以調一下,程序本身沒有任何問題。
程序是在Visual Studio 2008上編譯運行的。
#include "stdafx.h"
#include <iostream>
#include <vector>
#include <string>
using namespace std;
char menu[6][8][16]={
{"菜單","開胃菜","主菜","主食","飯後甜點","飲料"},
{"開 胃 菜","燒椒皮蛋","藍莓山葯墩","竹筍干炒肉","干煎野山菌","小炒黃牛肉"},
{"主 菜","菠蘿古老肉","水煮魚","茄汁基圍蝦","鹽焗手撕雞","紅燒黃花魚","蚝油生菜","金牌蒜香骨"},
{"主 食","三鮮水餃","手擀麵","米飯"},
{"飯後甜點","草莓奶昔","冰激凌","蛋糕"},
{"飲 料","雪碧","蔬菜汁","啤酒","果汁"},
};
double price[6][8]={
{0},
{0,8,10,8,13,12},
{0,15,20,35,30,28,8,18},
{0,15,12,2},
{0,10,16,10},
{0,5,8,8,8}
};
vector<int> menuvec; //保存選了那些菜單項
vector<int> foodvec; //保存選了那些食物
vector<int> countvec; //保存每個食物都選了幾份
bool dinner()
{
for(int i = 0; i < 6; i++)
{
if (i == 0)
{
cout << menu[0][i] ;
cout<<":"<<endl;
}
else
{
cout << " " << i << ".";
cout << menu[0][i] << endl;
}
}
cout <<" "<<"0點餐結束"<<endl;
int imenu = 0; //選擇菜單項
cout << "請選擇 ";
cin >> imenu;
if (imenu == 0)
return false;
cout << " "<< imenu << "." << menu[0][imenu] << endl;
for(int i = 1; i < 8 ; i ++)
{
if (strcmp(menu[imenu][i],"") == 0)//如果沒有此項食物則退出輸出
break;
cout << " "<< i << "." << menu[imenu][i] << " " << price[imenu][i] << endl;
}
cout <<" 0 返回" << endl;
int ifood = 0;//選擇要點的食物
int icount = 0;//選擇要點的食物的份數
cout << "請選擇";
cin >> ifood ;
if (ifood == 0)
return true;
cout <<"你點的是" << menu[imenu][ifood] << ","<<"請問你要幾分:";
cin >> icount;
menuvec.push_back(imenu);
foodvec.push_back(ifood);
countvec.push_back(icount);
return true;
}
int main()
{
while(dinner())
{
system("cls");
}
system("cls");
cout << "你點的菜單是:" << endl;
cout << " 菜名 "<<" 單價 "<<" 數量 " <<" 價格 "<< endl;
vector<int>::iterator menuIter = menuvec.begin();
vector<int>::iterator foodIter = foodvec.begin();
vector<int>::iterator countIter = countvec.begin();
double pricesum = 0; //計算總價錢
for(;menuIter != menuvec.end(),foodIter!= foodvec.end(),countIter != countvec.end();menuIter++,foodIter++,countIter++)
{
int menutemp = *menuIter;
cout << menu[0][menutemp];
cout << ":";
int foodtemp = *foodIter;
cout << menu[menutemp][foodtemp];
cout << " " << price[menutemp][foodtemp];
int counttemp = *countIter;
cout << " "<<counttemp;
cout << " "<< counttemp*price[menutemp][foodtemp] << endl;
pricesum += counttemp*price[menutemp][foodtemp] ;
}
cout <<"-----------------------------------------------------------------------------"<<endl;
cout << " "<<"總價是 "<< pricesum << endl;
}
Ⅳ C語言實習,餐廳點菜系統程序代碼!
#include<stdio.h>
#include<stdlib.h>
#defineROW12
#defineCOL12
#defineROW2COL1
#defineCOL24
intmain(void)
{
intarr1[ROW1][COL1]=
{
{1,2},
{3,4}
},
arr2[ROW2][COL2]=
{
{1,2,1,2},
{1,2,1,2}
},
arr3[ROW2][COL2],i,j,k;
for(i=0;i<ROW1;i++)
{
for(j=0;j<COL2;j++)
{
arr3[i][j]=0;
for(k=0;k<ROW2;k++)
{
arr3[i][j]+=arr1[i][k]*arr2[k][j];
}
}
}
for(i=0;i<ROW2;i++)
{
for(j=0;j<COL2;j++)
{
printf("%-3d",arr3[i][j]);
}
printf(" ");
}
system("pause");
return(0);
}
Ⅳ 求一個C語言編寫的點餐系統。
你好!
有個類似的點餐程序,基本和你要求差不多
Ⅵ c語言做一個菜單,就是做一個像餐廳那樣的菜單 選什麼輸出什麼 然後選兩個就輸出兩個
不知道你是不是想要這種效果
int main(){
int i;
printf("菜單: 1.紅燒魚 2.鹽水鴨 3.獅子頭 4.大閘蟹 請選擇您需要的菜: ");
while(1){
scanf("%d",&i);
switch(i) {
case 1:printf("price:20 ");
break;
case 2:printf("price:30 ");
break;
case 3:printf("price:10 ");
break;
case 4:printf("price:180 ");
break;
default : printf("很抱歉,暫時無此服務 ");
break;
}
}
}
Ⅶ 怎樣用C語言編寫菜單
對於窗口組件菜單,需要根據不同平台,通過圖形編程介面,進行菜單的編制。
常式:
#include<stdio.h>
#include<graphics.h>
#include<conio.h>
voidmain()
{
charstr;
inti,k,choice=1;
intgd=DETECT,gm;
initgraph(&gd,&gm,"");
setbkcolor(2);
settextstyle(3,0,3);
outtextxy(140,120,"A.TheMockClock.");
outtextxy(140,150,"B.TheDigitalClock.");
outtextxy(140,180,"C.Exit.");
setlinestyle(0,0,3);
rectangle(170,115,370,145);
/*按上下鍵選擇所需選項*/
for(i=1;i<=100;i++)
{
str=getch();
if(str==72)
{
--choice;
if(choice==0)choice=3;
}
if(str==80)
{
++choice;
if(choice==4)choice=1;
}
if(str==13)break;/*按回車鍵確認*/
/*畫圖做菜單*/
cleardevice();
switch(choice)
{case1:setlinestyle(0,0,3);
rectangle(170,115,400,145);
settextstyle(3,0,3);
outtextxy(140,120,"A.TheMockClock.");
settextstyle(3,0,3);
outtextxy(140,150,"B.TheDigitalClock.");
outtextxy(140,180,"C.Exit.");
break;
case2:setlinestyle(0,0,3);
rectangle(170,145,400,175);
settextstyle(3,0,3);
outtextxy(140,120,"A.TheMockClock.");
settextstyle(3,0,3);
outtextxy(140,150,"B.TheDigitalClock.");
settextstyle(3,0,3);
outtextxy(140,180,"C.Exit.");
break;
case3:settextstyle(3,0,3);
outtextxy(140,120,"A.TheMockClock.");
outtextxy(140,150,"B.TheDigitalClock.");
settextstyle(3,0,3);
outtextxy(140,180,"C.Exit.");
setlinestyle(0,0,3);
rectangle(170,175,400,205);
break;
}
}
if(i>=100)exit(0);/*如果按鍵超過100次退出*/
switch(choice)/*這里引用函數,實現所要的功能*/
{
case1:cleardevice();
setbkcolor(4);
settextstyle(3,0,4);
outtextxy(160,120,"No.1havenotbuilt.");break;
case2:cleardevice();
setbkcolor(4);
settextstyle(3,0,4);
outtextxy(160,150,"No.2havenotbuilt.");
break;
case3:exit(0);
}
getch();
closegraph();
}對於命令行菜單,直接通過不斷刷新輸出來模擬菜單行為。
常式:
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
intn,t,k;
intm;
chars1[20],s2[20],c;
char**l;
char*num[]={"one","two","three","four","five","six","seven","eight","nine","ten"};
voidmenu()
{
printf(" ******************************************************* ");
printf(" **1.查找字元串S1中S2出現的次數** ");
printf(" **2.統計字元串中大小寫字母,數字出現的次數** ");
printf(" **3.將數字翻譯成英語** ");
printf(" **4.結束** ");
printf(" ******************************************************* ");
printf(" 您的輸入:");
fflush(stdin);
scanf("%d",&n);
}
voidcheck()
{
chara[20],b[20];
intj=0,k,m,l=0;
intt=0,n=0;
printf("請輸入主字元串: ");
scanf("%s",a);
k=strlen(a);
printf("請輸入子字元串: ");
scanf("%s",b);
m=strlen(b);
for(n=0;n<k;n++)
if(a[n]==b[0])
{
j++;/*記錄相同的字元數*/
do
{
if(a[++n]==b[++t])
{
j++;
if(j==m)
{
l++;/*子字元串相同數*/
j=0;/*判斷後相同字元數歸零*/
t=-1;/*判斷中if中++t;t將會歸零*/
}
}
else
{
j=0;
t=0;
break;/*如果不同跳出while循環讓for使n+1繼續判斷*/
}
}while(a[n]!='