真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

c語言返回菜單函數(shù) c語言中返回函數(shù)值是什么意思

c語言中,怎樣實(shí)現(xiàn)子菜單向主菜單回退?

在 C 語言中實(shí)現(xiàn)子菜單向主菜單回退的常用方法是使用循環(huán)和條件語句控制程序流程。

成都創(chuàng)新互聯(lián)公司是一家專業(yè)提供平?jīng)銎髽I(yè)網(wǎng)站建設(shè),專注與成都網(wǎng)站建設(shè)、網(wǎng)站設(shè)計(jì)、H5高端網(wǎng)站建設(shè)、小程序制作等業(yè)務(wù)。10年已為平?jīng)霰姸嗥髽I(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)站建設(shè)公司優(yōu)惠進(jìn)行中。

具體實(shí)現(xiàn)步驟如下:

在主菜單中使用一個(gè)循環(huán)(如 while 循環(huán)),實(shí)現(xiàn)主菜單的重復(fù)顯示和等待用戶輸入的功能。

當(dāng)用戶選擇進(jìn)入子菜單時(shí),主菜單中的循環(huán)應(yīng)該退出,進(jìn)入子菜單的處理邏輯。

在子菜單中,當(dāng)用戶選擇回到主菜單時(shí),應(yīng)該退出子菜單的處理邏輯,返回到主菜單中的循環(huán)中。

在主菜單中,當(dāng)用戶選擇退出程序時(shí),主菜單的循環(huán)應(yīng)該退出,整個(gè)程序結(jié)束。

以下是一個(gè)簡單的示例程序,實(shí)現(xiàn)了主菜單和一個(gè)子菜單的功能,并實(shí)現(xiàn)了子菜單向主菜單回退的功能:

#include stdio.h

int main() {

int choice = 0;

while (1) {

printf("主菜單:\n");

printf("1. 選項(xiàng)一\n");

printf("2. 選項(xiàng)二\n");

printf("3. 子菜單\n");

printf("4. 退出\n");

printf("請(qǐng)輸入選項(xiàng)(1-4):");

scanf("%d", choice);

switch (choice) {

case 1:

printf("您選擇了選項(xiàng)一。\n");

break;

case 2:

printf("您選擇了選項(xiàng)二。\n");

break;

case 3:

printf("子菜單:\n");

printf("1. 子選項(xiàng)一\n");

printf("2. 子選項(xiàng)二\n");

printf("3. 返回主菜單\n");

printf("請(qǐng)輸入選項(xiàng)(1-3):");

scanf("%d", choice);

switch (choice) {

case 1:

printf("您選擇了子選項(xiàng)一。\n");

break;

case 2:

printf("您選擇了子選項(xiàng)二。\n");

break;

case 3:

printf("返回主菜單。\n");

// 跳出子菜單的處理邏輯,返回到主菜單的循環(huán)中

break;

default:

printf("無效選項(xiàng),請(qǐng)重新選擇。\n");

break;

}

break;

case 4:

printf("退出程序。\n");

// 跳出主菜單的循環(huán),結(jié)束程序

return 0;

default:

printf("無效選項(xiàng),請(qǐng)重新選擇。\n");

break;

}

}

return 0;

}

在這個(gè)示例程序中,主菜單使用了一個(gè) while 循環(huán),不斷重復(fù)顯示和等待用戶輸入。

當(dāng)用戶選擇進(jìn)入子菜單時(shí),主菜單中的循環(huán)退出,進(jìn)入子菜單的處理邏輯。子菜單也使用了一個(gè) switch 語句,等待用戶選擇,并執(zhí)行相應(yīng)的處理邏輯。

當(dāng)用戶選擇返回主菜單時(shí),子菜單的處理邏輯退出

c語言如何返回菜單?

問題比較多,主要是兩個(gè):

輸入的時(shí)候,用的格式和變量類型不匹配;

menu函數(shù)最后又調(diào)用menu,沒必要。

改了一下,你看看。

#include?stdio.h

#include?stdlib.h

struct?student

{

char?name[30];????/*名字肯定是字符串型*/

int?number[30];

char??sex;

int?age;

char?addr[30];

struct?student?*next;

};

int?a;

struct?student?*create()

{

struct?student?*phead=NULL;

struct?student?*pend,*pnew;

a=0;

pend=pnew=(struct?student?*)malloc(sizeof(struct?student));

printf("\n請(qǐng)輸入姓名\n");

scanf("%s",pnew-name);????/*name已經(jīng)是數(shù)組地址,不需要取地址*/

printf("\n請(qǐng)輸入號(hào)碼\n");

scanf("%s",pnew-number);????/*number是字符串,要用%s*/

printf("\n請(qǐng)輸入性別\n");

fflush(stdin);????/*退不到菜單問題在這里,要清空緩存*/

scanf("%c",pnew-sex);????/*char型要用%c*/

printf("\n請(qǐng)輸入年齡\n");

scanf("%d",pnew-age);

printf("\n請(qǐng)輸入地址\n");

scanf("%s",pnew-addr);????/*addr已經(jīng)是數(shù)組地址,不需要取地址*/

while(strcmp(pnew-number,?"0")?!=?0)????/*號(hào)碼是字符串,字符串比較要用strcmp*/

{

a++;

if(a==1)

{

pnew-next=phead;

pend=pnew;

phead=pnew;

}

else

{

pnew-next=phead;

pend-next=pnew;

pend=pnew;

}

pnew=(struct?student?*)malloc(sizeof(struct?student));

printf("\n請(qǐng)輸入姓名\n");

scanf("%s",pnew-name);

printf("\n請(qǐng)輸入號(hào)碼\n");

scanf("%s",pnew-number);

printf("\n請(qǐng)輸入性別\n");

fflush(stdin);

scanf("%c",pnew-sex);

printf("\n請(qǐng)輸入年齡\n");

scanf("%d",pnew-age);

printf("\n請(qǐng)輸入地址\n");

scanf("%s",pnew-addr);

}

free(pnew);

return?phead;

}

void?print(struct?student?*phead)

{

struct?student?*ptemp;

int?iindex=1;

printf("共有%d位聯(lián)系人\n",a);

ptemp=phead;

while(ptemp!=NULL)

{

printf("第%d位聯(lián)系人是:\n",iindex);

printf("\n姓名%s",ptemp-name);

printf("\n號(hào)碼%d",ptemp-number);

printf("\n性別%d",ptemp-sex);

printf("\n年齡%d",ptemp-age);

printf("\n地址%d",ptemp-addr);

ptemp=ptemp-next;

iindex++;

}

}

void?menu()

{

struct?student?*phead;

int?choice;

do

{

system("cls");

printf("????**************************************\n");

printf("????|???????歡迎使用通訊錄管理系統(tǒng)???????|\n");

printf("????|???????1--輸入聯(lián)系人的信息??????????|\n");

printf("????|???????2--添加聯(lián)系人信息????????????|\n");

printf("????|???????3--刪除聯(lián)系人信息????????????|\n");

printf("????|???????4--輸出聯(lián)系人信息????????????|\n");

printf("????|???????5--退出系統(tǒng)??????????????????|\n");

printf("????**************************************\n");

printf("????????????請(qǐng)選擇項(xiàng)目1-5\n");

scanf("%d",choice);

switch(choice)

{

case?1:

phead=create();

break;

#if?0

case?2:

phead=insert(phead);

break;

case?3:

delete(phead,2);

break;

#endif

case?4:

print(phead);

break;

case?5:

exit(1);

case?0:

break;

}

}

while(choice!=0);

//menu();????/*這里注掉,不需要再調(diào)一次*/

}

比如你建立了一個(gè)菜單,選擇了某項(xiàng)功能,用完后又想返回菜單,用c語言如何實(shí)現(xiàn)???請(qǐng)專業(yè)人士回答

實(shí)現(xiàn)功能的代碼放在函數(shù)里面

這樣功能實(shí)現(xiàn)完 函數(shù)返回,自然回到菜單.

一般這樣

while(1)

{

print_menu();//打印菜單

scanf("%d",a);

switch(a)

{

case?1:

func1();

break;

....

default:

printf("input?error\n");

break;

}

}


當(dāng)前標(biāo)題:c語言返回菜單函數(shù) c語言中返回函數(shù)值是什么意思
URL網(wǎng)址:http://weahome.cn/article/ddscsge.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部