c语言菜单界面设计(c语言菜单界面设计特殊化)
C语言编写菜单
#includestdio.h?
#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);?
??}?
?}
}
c语言菜单程序设计
随便乱写了一个程序,就是函数间的互相调用。
#include stdio.h
#include stdlib.h
void menu1()
{
puts("选择菜单");
puts("1.计算");
puts("2.显示一些有趣的东西");
int num;
scanf("%d",num);
switch(num)
{
case 1:system("cls");menu2();break;
case 2:system("cls");menu3();break;
}
}
void menu2()
{
puts("1+1=2");
system("pause");
system("cls");
menu1();
}
void menu3()
{
puts("你真帅!");
system("pause");
system("cls");
menu1();
}
int main()
{
printf("Hello!\n");
menu1();
return 0;
}
如何用c语言实现文本菜单界面
这样的可以吗?
这都是使用printf打印出来的,之后等待用户输入一个数值,根据这个数值调用不同的功能函数,即可实现文字菜单效果
/************************************************
*?函数名:Menu
*?功能:绘制主菜单界面,并根据输入转跳到其它功能
************************************************/
int?Menu()
{
char?cScan; //cScan用于记录键盘的输入
/*??┏━┓┃┛┗??*/
printf("\n\n");
printf("\t┏━━━━━━━━━━━━━━━━━━━━━━━━━┓\n");
printf("\t┃???????????欢迎使用员工管理系统BetaV1.0???????????┃\n");
printf("\t┃???????????????????????????????by?1500830221??????┃\n");
printf("\t┃??1、查看所有员工信息?????????????????????????????┃\n");
printf("\t┃??2、添加员工?????????????????????????????????????┃\n");
printf("\t┃??3、查找员工?????????????????????????????????????┃\n");
printf("\t┃??4、删除员工或修改资料???????????????????????????┃\n");
printf("\t┃??5、重设密码?????????????????????????????????????┃\n");
printf("\t┃??6、将员工信息以文本文档输出?????????????????????┃\n");
printf("\t┃??7、清屏?????????????????????????????????????????┃\n");
printf("\t┃??8、查看版本信息?????????????????????????????????┃\n");
printf("\t┃??9、退出?????????????????????????????????????????┃\n");
printf("\t┃??????????????????????????????????????????????????┃\n");
printf("\t┗━━━━━━━━━━━━━━━━━━━━━━━━━┛\n\n");
cScan=getch();
return?cScan-48;
}