c语言怎么返回菜单函数 C语言怎么返回菜单

c语言如何返回菜单?

问题比较多,主要是两个:

创新互联公司主营博野网站建设的网络公司,主营网站建设方案,APP应用开发,博野h5小程序定制开发搭建,博野网站营销推广欢迎博野等地区企业咨询

输入的时候,用的格式和变量类型不匹配;

menu函数最后又调用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请输入姓名\n");

scanf("%s",pnew-name);    /*name已经是数组地址,不需要取地址*/

printf("\n请输入号码\n");

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

printf("\n请输入性别\n");

fflush(stdin);    /*退不到菜单问题在这里,要清空缓存*/

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

printf("\n请输入年龄\n");

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

printf("\n请输入地址\n");

scanf("%s",pnew-addr);    /*addr已经是数组地址,不需要取地址*/

while(strcmp(pnew-number, "0") != 0)    /*号码是字符串,字符串比较要用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请输入姓名\n");

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

printf("\n请输入号码\n");

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

printf("\n请输入性别\n");

fflush(stdin);

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

printf("\n请输入年龄\n");

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

printf("\n请输入地址\n");

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

}

free(pnew);

return phead;

}

void print(struct student *phead)

{

struct student *ptemp;

int iindex=1;

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

ptemp=phead;

while(ptemp!=NULL)

{

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

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

printf("\n号码%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("    |       欢迎使用通讯录管理系统       |\n");

printf("    |       1--输入联系人的信息          |\n");

printf("    |       2--添加联系人信息            |\n");

printf("    |       3--删除联系人信息            |\n");

printf("    |       4--输出联系人信息            |\n");

printf("    |       5--退出系统                  |\n");

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

printf("            请选择项目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();    /*这里注掉,不需要再调一次*/

}

比如你建立了一个菜单,选择了某项功能,用完后又想返回菜单,用c语言如何实现???请专业人士回答

实现功能的代码放在函数里面

这样功能实现完 函数返回,自然回到菜单.

一般这样

while(1)

{

print_menu();//打印菜单

scanf("%d",a);

switch(a)

{

case 1:

func1();

break;

....

default:

printf("input error\n");

break;

}

}

c语言如何使运行完一个选项后返回菜单 求解

如果只是想返回已经写好的主菜单页面的话 可以直接在当前函数中结束位置调用主菜单所在的函数,,如果想输入某值返回的话 就加个输入提示 比如 在其他函数页面加上“输入0返回主菜单”就可以在任意时候 输入0来返回 当然实现的时候也是输入语句加c语言如何使运行完一个选项后返回菜单 求解

c语言,命令执行完以后怎么返回选择菜单

1、如果只是想返回已经写好的主菜单页面的话  可以直接在当前函数中结束位置调用主菜单所在的函数,如果想输入某值返回的话  就加个输入提示 比如 在其他函数页面加上“输入0返回主菜单”就可以在任意时候  输入0来返回  当然实现的时候也是输入语句加判断语句 加调用主菜单所在函数,调用前先调用清屏函数。

2、例程:

#includestdio.h

int menu()

{ int rt;

char str[256];

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

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

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

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

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

printf("请选择,输入选项前面的数字后回车: "); scanf("%s",str);

if ( str[0]='1'  str[0]='5' ) rt=str[0]-'0'; else rt=0;

return rt;

}

void f1() {}

void f2() {}

void f3() {}

void f4() {}

void main()

{ int s,loop=1;

while ( loop )

{ s=menu();

switch ( s )

{ case 1: f1(); break;

case 2: f2(); break;

case 3: f3(); break;

case 4: f4(); break;

case 5: loop=0; break;

default: break;

}

}

}


标题名称:c语言怎么返回菜单函数 C语言怎么返回菜单
文章来源:http://hbruida.cn/article/hjjcsc.html