#includestdio.h?

創新互聯主要為客戶提供服務項目涵蓋了網頁視覺設計、VI標志設計、營銷型網站建設、網站程序開發、HTML5響應式成都網站建設、手機網站制作、微商城、網站托管及成都網站維護、WEB系統開發、域名注冊、國內外服務器租用、視頻、平面設計、SEO優化排名。設計、前端、后端三個建站步驟的完善服務體系。一人跟蹤測試的建站服務標準。已經為自拌料攪拌車行業客戶提供了網站開發服務。
#includestring.h?
#includestdlib.h
//值傳遞
void?fun1(char?a)
{
a?=?'b';
}
//地址傳遞
char?fun2(char*?a)
{
*a?=?'a';
return?*a;
}
//動態分配數組
void?fun3(char*?a)
{
a??=?(char*)malloc(sizeof(char));
}
char?caidan()?
{?
char?choose[5];?
printf("\n***************************************\n");?
printf("??????┌──────┐\n");?
printf("??????│?菜單│\n");?
printf("?__________________________________\n");?
printf("│?1,按值傳遞????|\n");?
printf("│?2,按地址傳遞??|\n");?
printf("│?3,動態數組演示|\n");?
printf("│?4,退?出???????|\n");?
printf("└────────────────┙\n");?
printf("**************************************\n\n");?
do?
{?
printf("請輸入您的選擇(1-4):");?
scanf("%s",choose);?
}while(strcmp(choose,"1")strcmp(choose,"2")strcmp(choose,"3")strcmp(choose,"4"));?
//返回選擇的菜單,注意如果輸入太長?這里會異常,因為choose[5],只申請了5個字節。?
return?choose[0];?
}?
void?main()
{
//執行菜單的選擇?
while(1)
{
switch(caidan())?
{?
case?'1':
{
char?a?=?'a';
fun1(a);
//按值傳遞?內容不變
break;?
}
case?'2':
{
char?b?=?'b';
char?a?=?fun2(b);
//按地址傳遞內容會變
break;?
}
case?'3':
{
char*?p?=?NULL;
fun3(p);
//動態數組分配成功
break;?
}
case?'4':exit(0);?
}?
}
}
#include iostream
#include stdlib.h
#include conio.h
#include ctype.h
using namespace std;
void xuanzepaixu() //選擇排序函數
{
printf("待添加,請按任意鍵繼續...");
getchar();
}
void erfenpaixu() //二分查找函數
{
printf("待添加,請按任意鍵繼續...");
getchar();
}
void menu() //主菜單
{
system("cls"); //清屏
printf("\n\t\t\t 菜單\n");
printf("\t\t\t#***********************#\n");
printf("\t\t\t# 1選擇排序 #\n");
printf("\t\t\t# 2二分查找 #\n");
printf("\t\t\t# 3返回 #\n");
printf("\t\t\t# 4---關閉 #\n");
printf("\t\t\t#***********************#\n");
printf("\t\t\t 請選擇(1-4) =:");
}
void main()
{
char select;
while(1)
{
menu();
system("COLOR 9f");
scanf("%c",select);
if(select=='3')
break; //返回上級菜單
else
{
getchar(); //讀入回車符
if(!isdigit(select)) //如果不是數字字符
{
printf("\n\7Your select may be wrong, must enter the digit!\n");_getch();
}
else
{
switch (select)
{
case '1': xuanzepaixu();break;
case '2': erfenpaixu();break;
case '4':exit(0); //直接退出
default:
{
printf("\n\7\7Your selected digit may be wrong, select again!\n");
_getch();
break;
}
}
}
}
}
}
1、對于窗口組件菜單,需要根據不同平臺,通過圖形編程接口,進行菜單的編制。
例程:
#includestdio.h?
#includegraphics.h?
#includeconio.h?
void?main()?
{?
char?str;?
int?i,k,choice=1;?
int?gd=DETECT,gm;?
initgraph(gd,gm,"?");?
setbkcolor(2);?
settextstyle(3,0,3);?
outtextxy(140,120,"A.?The?Mock?Clock.");?
outtextxy(140,150,"B.?The?Digital?Clock.");?
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)?
{?case?1:?setlinestyle(0,0,3);?
rectangle(170,115,400,145);?
settextstyle(3,0,3);?
outtextxy(140,120,"A.?The?Mock?Clock.");?
settextstyle(3,0,3);?
outtextxy(140,150,"B.?The?Digital?Clock.");?
outtextxy(140,180,"C.?Exit.");?
break;?
case?2:?setlinestyle(0,0,3);?
rectangle(170,145,400,175);?
settextstyle(3,0,3);?
outtextxy(140,120,"A.?The?Mock?Clock.");?
settextstyle(3,0,3);?
outtextxy(140,150,"B.?The?Digital?Clock.");?
settextstyle(3,0,3);?
outtextxy(140,180,"C.?Exit.");?
break;?
case?3:?settextstyle(3,0,3);?
outtextxy(140,120,"A.?The?Mock?Clock.");?
outtextxy(140,150,"B.?The?Digital?Clock.");?
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)/*這里引用函數,實現所要的功能*/?
{?
case?1:?cleardevice();?
setbkcolor(4);?
settextstyle(3,0,4);?
outtextxy(160,120,"No.1?have?not?built.");?break;?
case?2:?cleardevice();?
setbkcolor(4);?
settextstyle(3,0,4);?
outtextxy(160,150,"No.2?have?not?built.");?
break;?
case?3:?exit(0);?
}?
getch();?
closegraph();?
}
2、對于命令行菜單,直接通過不斷刷新輸出來模擬菜單行為。
例程:
#include?stdio.h
#include?stdlib.h?
#include?string.h
int?n,t,k;
int?m;
char?s1[20],s2[20],c;
char?**l;
char?*num[]={"one","two","three","four","five","six","seven","eight","nine","ten"};
void?menu()
{
printf("\n\n\t\t*******************************************************\n");
printf("\t\t**???1.查找字符串S1中S2出現的次數????????????????????**\n");
printf("\t\t**???2.統計字符串中大小寫字母,數字出現的次數????????**\n");
printf("\t\t**???3.將數字翻譯成英語??????????????????????????????**\n");
printf("\t\t**???4.結束??????????????????????????????????????????**\n");
printf("\t\t*******************************************************\n");
printf("\t\t?????您的輸入:");
fflush(stdin);
scanf("%d",n);
}
void?check()
{
char?a[20],b[20];
int?j=0,k,m,l=0;
int?t=0,n=0;
printf("請輸入主字符串:\n");
scanf("%s",a);
k=strlen(a);
printf("請輸入子字符串:\n");
scanf("%s",b);
m=strlen(b);
for(n=0;nk;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]!='\0');/*查找完字符數組a結束*/
}
printf("子字符串出現次數:\n%d\n",l);
}??????????????????????????????????
void?cout()
{
int?n=0,t=0,k=0;
printf("請輸入一個字符串:\n");
fflush(stdin);/*清除緩沖*/
while((c=getchar())!='\n')
{
if(c='a'c='z')
n++;
if(c='A'c='Z')
t++;
if(c='0'c='9')
k++;
}
printf("有大寫字母:\n%d\n",t);
printf("有小寫字母:\n%d\n",n);
printf("有數字:\n%d\n",k);
}
void?number()
{
l=num;
printf("請輸入一個數字:(0-10)\n");
fflush(stdin);
scanf("%d",m);
printf("%d對應的英文是:\n%s\n",m,*(l+m-1));
}
void?main()
{
while(1)
{???
system("cls");
menu();
switch(n)
{
case?1:system("cls");check();system("pause");break;
case?2:system("cls");cout();system("pause");break;
case?3:system("cls");number();system("pause");break;
case?4:system("cls");break;
default:system("cls");break;?
}
if(n==4)?break;
}
printf("感謝使用\n");
}
switch()是C語言中多項選擇功能,
MenuSelect()函數的返回值表示所選擇的值,然后在switch中去找對應的項,然后執行其后續語句
給你一個簡單的菜單程序吧。其中的子函數,填充成樓主所需即可。
#include?stdio.h
/*子函數1*/
fun1()?{
printf?("子函數1\n");
}
/*子函數2*/
fun2()?{
printf?("子函數2\n");
}
/*子函數3*/
fun3()?{
printf?("子函數3\n");
}
/*子函數4*/
fun4()?{
printf?("子函數4\n");
}
int?main(void)?{
int?key;?/*命令編號*/
do?{
system("cls");?/*清屏*/
/*打印菜單*/
printf?("======================================================\n");
printf?("??#\t功能詳情\n");
printf?("------------------------------------------------------\n");
printf?("??1\t功能1\n");
printf?("??2\t功能2\n");
printf?("??3\t功能3\n");
printf?("??4\t功能4\n");
printf?("??5\t退出\n");
printf?("======================================================\n");
printf?("\n");
printf("請輸入命令編號以開啟操作:");
/*輸入命令編號*/
scanf("%d",key);?
printf?("\n");
/*switch函數實現輸入功能序號執行相應函數*/
switch?(key)?{
case?1:?fun1();?break;?/*子函數1*/
case?2:?fun2();?break;?/*子函數2*/
case?3:?fun3();?break;?/*子函數3*/
case?4:?fun4();?break;?/*子函數4*/
case?5:?printf("程序結束!按任意鍵退出...\n\n");?break;
default:printf("輸入錯誤,請重新輸入!\n\n");?break;
}
/*屏幕暫留*/
if?(key!=5)?{
printf?("\n");
printf("按Enter鍵繼續...\n");
printf?("\n");
fflush(stdin);
getch?();
}
}?while?(key!=5);
/*屏幕暫留*/
fflush(stdin);
getch?();
return?0;
}
運行結果
網頁名稱:c語言菜單函數是什么 C語言菜單函數
文章網址:http://www.yijiale78.com/article12/hhsddc.html
成都網站建設公司_創新互聯,為您提供搜索引擎優化、響應式網站、服務器托管、建站公司、Google、手機網站建設
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯