C语言菜单程序编写

kuaidi.ping-jia.net  作者:佚名   更新日期:2024-07-04
编写一个C语言程序,显示如下菜单并实现相应的菜单选择功能

/*本程序没有采用严格的措施防止错误的输入,
所以请在看源程序之后再输入。
运行后会有如下提示:
“请输入你的选择及整数n(用逗号来间隔):”
这时可以输入这样的选择:“1,2”,即求2的立方
“2,125”,即求125的立方根
“3”,退出程序*/

#include
#include

display();
lifang(n);
lifanggen(n);

main()
{
int choice,number;
display();
printf("请输入你的选择及整数n(用逗号来间隔):
");
scanf("%d,%d",&choice,&number);
switch(choice)
{
case 1:
lifang(number);
break;
case 2:
lifanggen(number);
break;
case 3:
break;
}
}

display()
{
printf("************************************************
");
printf("1.求整数n的立方
");
printf("2.求整数n的立方根
");
printf("3.结束程序
");
printf("************************************************
");
}

lifang(n)
{
double val=n;
int time=3;
printf("%lf


",pow(val, time));/*如果将%lf-->%d就不能得出结果*/
main();/*这里是简单的调用主函数来返回初始选择列表,还有其他方法实现*/
}

lifanggen(n)
{
double val=n;
double time=0.333333333333333;
/*这里为近似的1/3的值,因为要求
一个数字的立方根需要用到求立方根的算法,这里为求省事没有给出
,百度里边可以搜到*/
printf("%lf


",pow(val,time));
main();
}

程序如下:
#include #include int MENU_Print(int s32QuerNum){switch(s32QuerNum){case 1:printf("您选择的题目如下:
");printf("1、以下可以正确表示标识符的是:()
");printf("A、Data, Double
");printf("B、case, Big
");printf("C、2011A,hi_ok
");printf("D、_2011,year-month-data
");break;case 2:printf("您选择的题目如下:
");printf("2、以下运算符优先级最低的是:()
");printf("A、?:
");printf("B、++
");printf("C、&&
");printf("D、+=
");break;case 3:printf("您选择的题目如下:
");printf("2、以下选项中不能正确赋值的是:()
");printf("A、char s[20]; s=\"ABCDE\"
");printf("B、char s[]=\"ABCDE\"
");printf("C、char s[20]={\"ABCDE\"}
");printf("D、char s[20]={'A','B','C'}
");break;default:break;}return 0;}int main(){int s32ChooseNum = 0;while(1){printf("
题号范围为1-3,请输入题号:
");scanf("%d", &s32ChooseNum);if(s32ChooseNum 3){printf("题号范围为1-3,您是输入超出的范围,请重新输入
");continue;}MENU_Print(s32ChooseNum);}return 0;}
运行结果:


我也不知道有没有理解你的意思,你看看是否合适。。。,我没有做选择输入和结果的判断,如果需要的话可以加上去,你可以告诉我你的具体要求
以上

#include <stdio.h>
#include <math.h>
void armstrong(int a)
{
int i;
int n = 1;
int b = a;
int s = 0;
while(b /= 10) n++;

b = a;

for(i = 0; i < n; i ++){
s += (int)pow(b%10, n);
b /= 10;
}
if(s == a){
printf("%d 是水仙花数!\n", a);
}else{
printf("%d 不是水仙花数!\n", a);
}
}
void prime(int a)
{
int i;
if(a < 2) {
printf("%d 不是素数!\n", a);
return ;
}
for(i = 2; i < a; i ++){
if(a % i == 0) {
printf("%d 不是素数!\n", a);
return ;
}
}
printf("%d 是素数!\n", a);
}
void max(int a, int b, int c)
{
if(b > a) a = b;
if(c > a) a = c;
printf("最大值是:%d\n", a);
}
void factorial(int a)
{
int i;
int f = 1;
for(i = a; i >1; i --)
f *= i;
printf("%d 的阶乘是:%d\n", a, f);
}

int main(int argc, char **argv)
{
int a, b, c;
int type ;
int run = 1;
printf("本程序可完成某些数学计算:\n");
printf( "***********************************\n"
"* 1.判断一个数是否为水仙花数。 *\n"
"* 2.判断一个数是否为素数。 *\n"
"* 3.求三个数的最大值。 *\n"
"* 4.求一个数的阶乘。 *\n"
"* 0.退出。 *\n"
"***********************************\n");
do{
printf("请按菜单进行选择(0-4):");
scanf("%d", &type);
switch(type){
case 0:
while(1){
getchar();
printf("你确定退出吗?(y/n)");
a = getchar();
switch(a){
case 'y':
run = 0;
break;
case 'n':
run = 1;
break;
default:
break;
}
if((a == 'y') || (a == 'n')) break;
}
break;
case 1:
printf("请输入一个数:");
scanf("%d", &a);
armstrong(a);
break;
case 2:
printf("请输入一个数:");
scanf("%d", &a);
prime(a);
break;
case 3:
printf("请输入三个数:");
scanf("%d%d%d", &a, &b, &c);
max(a, b, c);
break;
case 4:
printf("请输入一个数: ");
scanf("%d", &a);
factorial(a);
break;
default:
break;
}
}while(run);
return 0;
}

我看错了,程序没问题

你就写几个函数吗 再用switch语句 很简单的 其实我觉得这种问题需要你自己动手

  • C语言 菜单选择的程序怎么做 (用switch 语句)
    答:include<stdio.h> void do1(){ int n,i,m;int a[10]={0};printf("请输入要判断的数:");scanf("%d",&n);m=n;for(i=0;;i++){ a[i]=m%10;m/=10;if(m==0)break;} for(i=0;a[i]!=0;i++){ m+=a[i]*a[i]*a[i];} if(n==m)printf("%d是水仙花数\n",n...
  • 怎样用C语言编写菜单
    答:直接通过不断刷新输出来模拟菜单行为。例程: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...
  • 用c语言制作一个简单的菜单程序,一个主函数四个子函数
    答:给你一个简单的菜单程序吧。其中的子函数,填充成楼主所需即可。include <stdio.h>/*子函数1*/fun1() {printf ("子函数1\n");}/*子函数2*/fun2() {printf ("子函数2\n");}/*子函数3*/fun3() {printf ("子函数3\n");}/*子函数4*/fun4() {printf ("子函数4\n");}int ...
  • 用c语言编写一个程序菜单:1、判断一个数是否为水仙花数;2.求三个数的...
    答:int a,b,c,max;printf("请输入三个整数:\n");scanf("%d%d%d",&a,&b,&c);if(a>=b) max=a;if(a<=b)max=b;if(max<=c)max=c;printf("三个数中最大的是:%d\n",max);} void fun3(){ char s[10];int i,n;printf("请输入要判定的数(整数):");scanf("%s",s);n=...
  • C语言编写菜单
    答:a){ a = (char*)malloc(sizeof(char));}char caidan() { char choose[5]; printf("\n***\n"); printf(" ┌──────┐\n"); printf(" │ 菜单│\n"); printf(" ___
  • c语言用switch语句实现菜单程序
    答:include <stdio.h> int count(a,b,sign){ int num;switch (sign) { case '+':num=(a+b);break;case '-':num=(a-b);break;case '*':num=(a*b);break;case '/':num=a/b;break;default:break;} return num;} int main(void){ char sign;int ch,a,b,num;// double nu...
  • 如何在c语言建立一个菜单“1输入内容2显示选项一中刚输入的内容3显示作 ...
    答:include "stdio.h"void main(){ int n;char text[1024];n=0;text[0]=0;while(1){ printf("\n1输入内容\n2显示选项一中刚输入的内容\n3显示作者信息\n4退出程序\n");scanf("%d",&n);if(n==1){ printf("请输入内容:");scanf("%s",text);} else if(n==2){ printf(text);} e...
  • 编写一个C语言程序,显示如下菜单并实现相应的菜单选择功能
    答:/*本程序没有采用严格的措施防止错误的输入,所以请在看源程序之后再输入。运行后会有如下提示:“请输入你的选择及整数n(用逗号来间隔):”这时可以输入这样的选择:“1,2”,即求2的立方 “2,125”,即求125的立方根 “3”,退出程序*/ include<stdio.h> include<math.h> display();lifang(...
  • 设计一个c语言程序 据要求设计菜单程序 好的话可以追加哦
    答:include <stdio.h> #include <stdlib.h>typedef struct node {int data;struct node *next;}*LinkList,*pNode;LinkList InitList() {LinkList head = (pNode)malloc(sizeof(struct node));head->next= NULL;head->data = 0;return head;}void CreateList(LinkList head) {int x;pNode p...
  • C语言编程做一个简单的菜单
    答:include <stdio.h>#include <stdlib.h>void menu() //菜单绘制{ printf("---\n"); printf("\t\t 0.退出\n"); printf("\t\t 1.录入信息\n"); printf("\t\t 2.查找信息\n"); printf("\t\t 3.删除信息\n"); printf("\t\t 4.浏览信息\n"); pr...