C语言实训报告2
信息工程学院
《C 语言》实习报告
专业班级 电子A0901
学 号
姓 名
组 号
实 验 室 F503
成绩评定
老师签名
2010 年 12 月24 日
计算器实习报告
班级:电子A0901
姓名:学号:指导老师:实习日期:16周
实习地点:实训楼F503,F206
实习题目:
运用TurboC编写一个计算器程序。
实习目的:
1、 进一步掌握和利用C语言进行程设计的能力。
2、 进一步理解和运用结构化程设计的思想和方法。
3、 初步掌握开发一个小型实用系统的基本方法。
4、 学会调试一个较长程序的基本方法。
5、 学会利用流程图或N-S 图表示算法。
6、 掌握书写程设计开发文档的能力 (书写实习报告)。
实习要求:
编写一个计算器程序,实现加、减、乘、除、求平方根 (正
数)、倒数等功能。
①要求根据用户从键盘输入的表达式:
操作数1 运算符op 操作数2
计算表达式的值,指定的算术运算符为加 (+)、减 (-)、乘 (*)、
除 (/)等。
②要求程序能进行浮点数的算术运算。
③如果要求输入的算术表达式中的操作数和运算符之间可
以加入任意多个空白符,那么程序如何修改?
④程序要求可以连续做多次算术运算,每次运算结束后,程
序都给出提示:
Do you want to continue (Y/N or y/n)?
用户输入Y或y时,程序继续进行其他算术运算;否则程序退出
运行状态。
系统分析:
1、 当输入一个函数时,输出为这个数的平方根。
2、 当输入一个函数时,输出为这个数的倒数。
3、 当输入一个表达式,输出为这个表达式的结果。
图示: 开始
输入X
X
1
3 其他
输入a 输入aopb 输出”error”
c a+b
源程序:
#include
#include
voidmain()
{float a,b,c;
char op,ch;
intx;
clrscr();
do
{printf("1;3 ");
scanf("%d",&x);
switch(x)
{case 1:printf("-");
scanf("%f",&a);
if(a 0)
printf("error");
else
c (1.0/a);
break;
case3:{printf("*");
scanf("%f%c%f",&a,&op,&b);
switch(op)
{case'+':c a+b;break;
case'-':c a-b;break;
case'*':c a*b;break;
case'/':if(b! 0){c a/b;break;}
case'^':c pow(a,b);break;