设计一个菜单程序。
一.菜单内容:
程序运行后,给出5个菜单项的内容和输入提示:
1. findnum
2. findroot
3. bear
4. diamond
5. goodbye
二、设计要求。
使用数字1-5来选择菜单项,其它输入则不起作用:
三、设计实例:
1. 首先编写一个菜单程序,输入1-6以进入相应选择项,从程序测试结构可知,当选择相应选择项时候,其输出信息为:findnum、findroot、bear、diamond、goodbye!
使用switch语句实现功能选择。
应该设计一个函数用来输出提示信息和处理输入,这个函数应该返回一个数值,以便提供给switch语句使用。
三、增加菜单项的处理功能。
findnum功能:一只老鼠咬坏了账本,公式中符号()代表是被老鼠咬掉的地方。要想恢复下面的等式,应在()中填上哪个相同的数字?
3()*6237=()3*3564 findroot这里要求编制一个求方程ax^2+bx+c=0的根程序。
bear本题是一个笑话,话说有一只狗熊到玉米地里掰玉米,一边掰一边吃,第一天吃了一半,又拿走了一个回去喂狗熊。第二天又去吃了剩下的一半,走时仍然带一个回去喂狗熊。以后每天都吃前一天的一半,拿走一个。
到第十天时,地里只剩下一个玉米。求地里一共有多少玉米。
diamond
goodbye!
1. 主菜单:先用for语句打印菜单的的界面,然后再里面打印五个游戏的目录。再在下面用switch-case打出五个选择,并调用相应的函数。
2. findnum函数:,键入1,调用此函数。
此函数是运用穷举法,把所有可能的函数都试一下,从中找出符合条件的数,某位的数字可能是1-9,将1-9拿来试验,既可以找到适合的数字,也就是满足题目要求的i。
3. findroot函数:键入2,调用此函数。
此函数是先输入方程的三个系数a,b,c,然后计算b*b-4*a*c的大小,然后看其是否小于0,如果小于0,就打印方程没有根,如果大于等于0,就打印方程的根。
4. bear函数:键入3,是调用此函数。此函数是先定义狗熊到玉米地掰玉米的天数,然后每一次都是求一次的玉米剩余数先加1再乘2,用while循环,最后得到原有的玉米数。
5. diamond函数:键入4,是调用此函数。此函数是利用for的两层循环,设计好行列数,打印*,最后得到钻石。
6. googbey:键入5就利用exit回到主页面,然后就打印出goodbey!.
图1-2findnum函数图1-3findroot函数。
图1-4bear函数图1-5diamond函数。
#include<>
#include <>
#include <>头文件。
double findroot找根的函数原型声明。
void diamond钻石函数的原型声明。
void bear小熊掰玉米的函数原型声明。
void findnum老鼠啃账本的函数原型声明。
int main主函数。
int n,i;
printf("☆请在菜单中选择趣味程序☆");
for(i=1;i<23;i++)
printf("*
printf("");
printf("◇findnum ◇");
printf("◇findroot ◇");
printf("◇bearn");
printf("◇diamond ◇");
printf("◇goodbey ◇");
for(i=1;i<23;i++)
printf("*
printf("");
printf("★请输入你的选择:以上是菜单界面。
for以下是菜单的选择,scanf("%d",&n);
switch(n)
case 1:findnum();break调用函数。
case 2:printf("请输入方程的三个系数a,b,c");findroot();break;//调用函数。
case 3:bear();break调用函数。
case 4:diamond();break调用函数。
case 5:printf("goodbye!")exit(0);break;}}
return 0;}
*函数findnum(老鼠啃账本)如下*/
#include <>
void findnum()
int i;
for(i=0;i<10;i++)
*函数findroot(方程求根)如下*/
#include<>
#include <>
double findroot()
double a,b,c,disc,x1,x2,p,q;
scanf("%lf%lf%lf",&a,&b,&c); 用户键入方程的三个系数。
disc=b*b-4*a*c;
if(disc<0判断是否小于0
printf("this question hasn't no real root方程没有根。
elsep=-b/(2.0*a);
q=sqrt(disc)/(2.0*a);
x1=p+q ; x2=p-q;
printf("real roots:x1=%7.2fx2=%7.2f",x1,x2);}输出方程的两个根。
return 0;}
*函数bear(小熊掰玉米) 如下*/
#include<>
void bear()
int day ,m,n;
day=9;
m=1;while(day>0)
n=2*(m+1);m=n;//前一天是后一天先加1再乘2
day由最后一天往前倒推。
printf("地里的玉米一共有:%d",n);}
*函数diamond如下*/
#include<>
#include <>
void diamond()
int i, j;int m, n;
for (i=1; i<=7; i++)行数。
m = abs(4-i);
for (j=0; j
if (i > 4)
n = 8-i;}
elsen = i;}
for (j=0; j<2*n-1; j++)
printf("*
printf("");
图1-6主菜单。
图1-7 选择1得到findnum
图1-8选择2得到findroot
图1-9选择3得到bear
图1-10选择4得到diamond
图1-11选择5得到goodbey
使用数组和指针统计成绩。
1. 设计题目:假设给定班级各科考试平均成绩的原始资料如下:
数学:75物理:80
外语:83政治:85
体育:86人数:30
要求统计出全班学期总平均成绩以及得分最低的科目和该科目的成绩。要求的输出结果如下:
原始信息如下:
数学:75物理:80
外语:83政治:85
体育:86人数:30
课程设计报告格式 课程设计
洛阳理工学院。课程设计说明书。课程名称。设计课题。专业。班级。学号。姓名。完成日期2014年12月26日。问题描述 小四宋体,行间距单倍行距,每段缩进两个字符。叙述一下设计的内容要求。基本要求 小四宋体,行间距单倍行距,每段缩进两个字符。叙述一下设计的基本要求。测试数据 小四宋体,行间距单倍行距,每...
课程设计总结,课程设计报告
课程设计总结,课程设计报告。3.尝试应用项目管理软件进行项目进程的规划管理 绘制甘特图,不作硬性要求 二 选题说明。人事管理是企业信息管理的重要部分,面对大量的人事工资信息,财务部门采用人力处理将浪费大量的时间 人力和物力,且数据的准确性低。因此,开发一个界面友好,易于操作的人事工资管理软件进行自动...
课程设计 课程设计报告格式
学校名。课程设计报告。课程名称 c语言程序设计 系别 专业班级 学号。姓名。课程题目 企业人事管理系统 完成日期 指导老师 年月日。附件。课程设计的内容。企业人事管理系统 本项目的目标是开发一个功能实用,操作简便,简单明了的人事管理系统。能够录入人事的基本资料,在操作上能够完成诸如添加 修改 删除 ...