编写一个C语言程序,显示如下菜单并实现相应的菜单选择功能

编写一个C语言程序,显示如下菜单并实现相应的菜单选择功能,第1张

/*本程序没有采用春纤严格的措施防止错误的输入,

所以请在看源程序之后再输入。

运行后会有如下提示:

请输入你的选择及整数n(用逗号来间隔):”

这时可以输入这样的选择:“1,2”,即求2的立方

“2,125”,即求125的立方根

“3”,退出程序*/

#include<stdio.h>

#include<math.h>

display()

lifang(n)

lifanggen(n)

main()

{

int choice,number

display()

printf("请输入你的扒唤仿选择及整数n(用逗号来间隔):\n")

scanf("%d,%d",&choice,&number)

switch(choice)

{

case 1:

lifang(number)

break

case 2:

lifanggen(number)

break

case 3:

break

}

}

display()

{

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

printf("1.求整数n的立链态方\n")

printf("2.求整数n的立方根\n")

printf("3.结束程序\n")

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

}

lifang(n)

{

double val=n

int time=3

printf("%lf\n\n\n",pow(val, time))/*如果将%lf-->%d就不能得出结果*/

main()/*这里是简单的调用主函数来返回初始选择列表,还有其他方法实现*/

}

lifanggen(n)

{

double val=n

double time=0.333333333333333

/*这里为近似的1/3的值,因为要求

一个数字的立方根需要用到求立方根的算法,这里为求省事没有给出

,百度里边可以搜到*/

printf("%lf\n\n\n",pow(val,time))

main()

}

#include<stdio.h>

#include <stdlib.h>

void hello()

{

printf("hello world\n")

}

int main()

{

 int x

 while (1)

 {

  printf("------------- *** 作选项-----------\n")

  printf("1:返回菜单 \n")

  printf("2:退出程序 \n")

  printf("3:执行 *** 作 \n")

  printf("--------------------------------\n")

 

  printf("按数字键选择要执行的 *** 作: ")

  scanf("%d",&x)

  printf("\n")

  //输入2跳出循环,退出程序

  if(x==2)

  break

  

  switch(x)

  {

  case 1:  break //输入1,跳出switch语句,进入下一卜枯次循环

  case 3:  hello()break  

  default:  //数字输入错误,跳出siwtch语句,进入下一次循环

  printf("输入的数字不正确\n")

  break

  }

 }

 return 0

}

说明:有3个选项,1是用返回菜单,2是用于退出程序,3是用启宴于执行相关的 *** 作,这里只是一个示例,所以将要执行悄弊银的 *** 作,编写成了一个输出hello world的函数。

#include<stdio.h>

void do1()

{

int n,i,m

int a[10]={0}

printf("请输入要判断的数:")

scanf("%d",&n)

m=n

for(i=0i++)

{

a[i]=m%10

m/=10

if(m==0)

break

}

for(i=0a[i]!=0i++)

{

m+=a[i]*a[i]*a[i]

}

if(n==m)

printf("%d是水仙花数\n",n)

else

printf("%d不是水仙花数\n",n)

}

void do2()

{

int max,n,m,k

printf("请输入三个判断的数字:")

scanf("%d %d %d",&n,&m,&k)

max=n

if(max<m)

max=m

if(max<k)

max=k

printf("拍裂最大的数为:%d\n",max)

}

void do3()

{

int i,n,m=1

printf("请输入要求的数字:")

scanf("%d",&n)

for(i=1i<=ni++)

m*=i

printf("%d的阶乘是%d\n",n,m)

}

int menu()

{

int cn

printf("请输入指令:")

scanf("%d",&cn)

return cn

}

void main()

{

for()

{

switch(menu())

{

case 1:

do1()break

case 2:

do2()break

case 3:

do3()break

}

}

}

我给的这个还不是文件的形式,你需坦脊要的是文件的形式的话只要自己稍微改改就可以了,袭信闭如果不是非要文件的形式,那么完全符合,纯属手打,也同时锻炼了自己,求采纳


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12563300.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-26
下一篇 2023-05-26

发表评论

登录后才能评论

评论列表(0条)

保存