程序设计题一:编程实现计算器功能

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

程序设计题一:编程实现计算器功能

一、课题内容和要求

通过此课题,练习顺序结构、选择结构、循环结构的程序的编制,特别是“菜单”的设计,掌握一些算法思想的应用,实现计算器功能。

二、需求分析

(1)主菜单如下:

计算器菜单

========================

1:计算 a+b

2: 计算 a-b

3: 计算 a*b

4: 计算 a/b

5: 计算 a%b

0: 退出

请选择(0-5):

(2)选择相应菜单,执行相关操作。

【程序设计说明】

1、用循环语句显示主菜单

2、用switch( )语句

三、概要设计:在这个程序中,我选择了顺序结构来编写这个程序,首先我先确定这个程序有哪些变量,这些变量的类型是什么。在程序中我运用了switch语句、do、、、while语句,最后调试、运行,输出相应的结果。

四、详细设计

#include

void main()

{

int i;

float a,b;

do

{

printf(" jisuanqicaidan\n");

printf("____________________\n");

printf("____________________\n");

printf("1,jisuan a+b\n");

printf("2,jisuan a-b\n");

printf("3,jisuan a*b\n");

printf("4,jisuan a/b\n");

printf("5,jisuan a%b\n");

printf("0,tuichu\n");

printf("select i from 0 to 5\n");

scanf("%d",&i);

scanf("%f,%f",&a,&b);

switch(i)

{

case 0:break;

case 1:printf("%f+%f=%f\n",a+b);break;

case 2:printf("%f-%f=%f\n",a-b);break;

case 3:printf("%f*%f=%f\n",a*b);break;

case 4:printf("%f/%f=%f\n",a/b);break;

case 5:printf("%d%%d=%d\n",(int)a%(int)b);break;}} while(i>0&&i<6);}

五、测试数据及其结果分析:

测试数据

输入:1

输入:1.0,2.0

按回车出现的结果为:1.000000+2.000000=3.000000

输入:2

输入:2.0,1.0

按回车键出现的结果为:2.0000000-1.000000=1.000000

输入:3

输入:2.0,1.0

按回车键出现的结果为: 2.000000*1.000000=2.000000

输入:4

输入:4.0,2.0

按回车键出现的结果为: 4.000000/2.000000=2.000000

输入:5

输入:4.0,2.0

按回车键出现的结果为:4.000000%2.000000=2.000000

输入:1.0,2.0

输入:0退出

六、调试过程中的问题:1、刚开始没有出现主菜单要求的格式,然后通过老师的点拨,按照要求输出了程序;2、求余运算时,没有把两个变量强制转换为整形。

七、课程设计总结:在两周的实训中,我收获了很多,通过此课题,我们练习顺序结构,

选择结构、循环结构的程序的编制,特别是“菜单”的设计,掌握一些算法思想的应用,实现

计算器功能。设计一个计算机菜单对于我们而言还是有点难度的,在老师和同学的帮助下,两

天内顺利完成了任务,但是过程中也遇到了困难,比如一些语句的使用,菜单格式的设计,变

量类型的强制转换等问题,在这些问题中我学会了很多知识,一一解决了这些问题,我觉得收

获还是很大的。

相关文档
最新文档