简单的计算器实验报告.docx
《简单的计算器实验报告.docx》由会员分享,可在线阅读,更多相关《简单的计算器实验报告.docx(12页珍藏版)》请在冰豆网上搜索。
![简单的计算器实验报告.docx](https://file1.bdocx.com/fileroot1/2022-11/26/7bbb5ae6-eb54-4bcf-b56f-af4148170e8f/7bbb5ae6-eb54-4bcf-b56f-af4148170e8f1.gif)
简单的计算器实验报告
HUNANUNIVERSITY
程序设计训练
――简单的计算器
报告
学生姓名田博鑫
学生学号
20110407110
专业班级
工业工程
(1)班
指导老师
吴蓉晖
2012年6月16日至2012年7月10日
1.程序设计目的和要求
目的:
此次程序设计的目的主要是为了我们能更好的理解和熟悉C语言这门计算机课程,自
己有对计算机程序设计的的初步认识。
要求:
运用相关知识,查阅相关资料,编写一个简单的计算器,能够实现简单的基本的加减乘除运算,在计算器工作时利用键盘或鼠标进行相应操作。
程序基本功能要求实现完整,并
有简单的验证。
在计算器运行中,输入数据时如果输入错误的情况,能够通过键盘上的退格
键进行删除,并且重新输入正确的数据。
在数据输入完成,如果需要放弃本次计算操作,可
以利用程序中设置好的按键进行调整。
2.程序设计的任务和内容
这个简单的计算器要求能够进行简单的四则运算,要求运用所学的知识和查阅相关的资料来完成这个简单的计算器的设计,要求这个简单的计算器尽量在windows界面下进行,
计算器界面不做要求。
该简单的计算器包含有基本的四则运算、正弦函数、余弦函数、正切
函数、余切函数、平方、开方,以及平均值、标准差、方差的运算。
3.程序设计说明
该简单的计算器能进行基本的四则运算和乘方,开方,以及三角函数的运算。
操作需要逐步根据提示来完成所要进行的运算。
比如要进行81的开方运算的话首先在屏幕上可以
看到开放运算的命令是5,所以先要输入5,然后再输入要开方的数据81可以在屏幕上看到运行的结果。
4•详细设计说明包含流程图
输入数据回车
「减法运算]
1
输入数据回车
厂
乘法运算
—
输入数据回车
1
输入数据回车
平方运算
输入数据回车
输入数据回车
V
立方运算
输入数据回车
5.程序的调试及结果
调试与运行(没有错误)
输入数据回车
输入数据回车
平均值方差标准差运算
输入数据回车
更忡世就啞查吾®插八■①工程②鴉連⑥土具©筍口②刪用®
茴F只口臨
r1|:
.'-二”口闰科會
3
(Glob^ls)
▼(AUghbalmemben^l
fH苗IiRi
主界面
标推差运具
It嗟辿坦运-la垣运运运运E运运值
方弦署切均I:
卫加减奏除莖W金士靈湄n-4H1234567890121也111^
加法运算
5.B0@000Pressanykeytocontinue
减法运算
差
准
标差异曇負HgMM-iH运运运运运运运运运运值
loffi乘除卄扌止亲止睪碱
■贰
123456789012-1
3
2
5
4
continue
请输人3的值:
325
75,anyTteytocantinue
乘法运算
2i
11IX
输
请
平方运算
叭WMHtttMMMWnw.廿和运运运医国运运运运运运值
方方方弦蓝切均6=卫加臧乘除幵正辜嚨
---TV1234567890
平均值,方差,标准差
6.程序设计心得与体会
本次程序设计我的是设计一个简单的计算器,我以为是很简单的,但是做起来就不是
那么容易了,首先参考网上的有不怎么看懂,自己想自己做但却没有思路,就拿那个C++6.0
的程序软件来说吧,刚开始的时候还不知道怎么用,只好花时间到网上去现学现卖。
虽然道
路是曲折,但是最终还是能够把它顺利的完。
,这个简单的程序设计我是看了网上的有关的
程序源代码之后自己总结之后完成的,虽然中间有些看不懂,不过还是通过XX了解了相关
7.程序源代码
#include#include#includevoidmain()
{
inti,flag;
printf("*****
欢迎使用简单计算器*******\n");
printf("
1.
加法运算
\n");
printf("
2.
减法运算
\n");
printf("
3.
乘法运算
\n");
printf("
4.
除法运算
\n");
printf("
5.
开方运算
\n");
printf("
6.
平方运算
\n");
printf("
7.
立方运算
\n");
printf("
8.
正弦运算
\n");
printf("
9.
余弦运算
\n");
printf("
10.
正切运算
\n");
printf("
11.
余切运算
\n");
printf("
12.
平均值方差
标准差运算\n");
printf("
请输入i的值:
\n");
scanf("%d",&i);switch(i){
case1:
flag=1;break;
case2:
flag=2;break;
case3:
flag=3;break;
case4:
flag=4;break;
case5:
flag=5;break;
case6:
flag=6;break;
case7:
flag=7;break;
case8:
flag=8;break;
case9:
flag=9;break;
case10:
flag=10;break;
case11:
flag=11;break;
case12:
flag=12;break;
default:
printf("输入有错误!
\n");break;}
if(flag==1)
doublefa(doublex,doubley);/*
{
doublex,y,a;
printf("请输入x,y的值:
\n");scanf("%lf%lf",&x,&y);
a=x+y;
printf("%lf",a);
}
}
elseif(flag==2)
{
doublefb(doublex,doubley);/*
{
doublex,y,b;
printf("请输入x,y的值:
\n");scanf("%lf%lf",&x,&y);
b=x-y;
printf("%lf",b);
}
}
elseif(flag==3)
{
doublefc(doublex,doubley);/*
{
doublex,y,c;
printf("请输入x,y的值:
\n");scanf("%lf%lf",&x,&y);
c=x*y;
printf("%lf",c);
}
}
elseif(flag==4)
{
doublefd(doublex,doubley);/*
{
doublex,y,d;
printf("请输入x,y的值:
\n");scanf("%lf%lf",&x,&y);
d=x/y;
printf("%lf",d);
}
}
加法运算*/
减法运算*/
乘法运算*/
除法运算*/
doublefe(doublex);/*开方运算*/{
doublex,e;
printf("请输入x的值:
\n");scanf("%lf",&x);
e=sqrt(x);
printf("%lf",e);
}
}
elseif(flag==6)
{
doubleff(doublex);/*平方运算*/
{
doublex,f;
printf("请输入x的值:
\n");scanf("%lf",&x);
f=pow(x,2);
printf("%lf",f);
}
}
elseif(flag==7)
{
doublefg(doublex);/*立方运算*/
{
doublex,g;
printf("请输入x的值:
\n");scanf("%lf",&x);
g=pow(x,3);
printf("%lf",g);
}
}
elseif(flag==8)
{
doublefh(doublex);/*正弦运算*/
{
doublex,h;
printf("请输入x的值:
\n");scanf("%lf",&x);
h=sin(x);
printf("%lf",h);
}
}
doublefi(doublex);/*余弦运算*/{
doublex,j;
printf("请输入x的值:
\n");scanf("%lf",&x);
j=cos(x);
printf("%lf",j);
}
}
elseif(flag==10)
{
doublefj(doublex);/*正切运算*/
{
doublex,k;
printf("请输入x的值:
\n");scanf("%lf",&x);
k=tan(x);
printf("%lf",k);
}
}
elseif(flag==11)
{
doublefk(doublex);/*余切运算*/
{
doublex,l;
printf("请输入x的值:
\n");scanf("%lf",&x);
l=atan(x);
printf("%lf",l);
}
}
elseif(flag==12)
{
doublefl();
{
intj=0,i=0,n;
doublesum=0.0,ave,w=0.0,m;
doublea[1000];
printf("请问你想输入多少数据\n");scanf("%d",&n);
for(j=0;jprintf(”请输入第%d个数据\n",j+1);
seanf("%lf",&a[j]);
}
for(i=0;i{
sum=sum+a[i];
}
ave=(double)sum/n;
printf("输出平均值!
\n");
printf("%lf\n",ave);
for(j=0;j{w=pow(a[j]_ave,2)+w;
}
printf("输出方差!
\n");
printf("%lf\n",w);
m=sqrt(w);
printf("输出标准差!
\n");
printf("%lf\n",m);
}
}
}