



下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 实 验 报 告课程名称:计算机软件基础学期:20011-2012学年第二学期成绩: 姓名:考号:实验名称:计算器 实验要求: 必作实验学时:2学时实验编号:3实验日期: 第2周完成日期:学院:机电工程学院专业 :年级: 2011级一、实验目的:1熟练掌握计算器的计算过程;本试验旨在帮助我们复习与巩固计算器的计算过程是如何实现的;二、实验内容: 编写并调试计算器的程序,介绍程序所能够达到的功能.程序如下:int main()char a80,*p,op;/定义char型数组a,指针变量*p,char型变量opint n=0,i;/定义整型变量n,i。n赋值0int data1,data2;/定
2、义整型变量data1,data2float output;定义浮点型变量outputscanf("%s",a);/按字符串格式从键盘输入到变量ap=&a0;/数组a的首元素地址赋给指针变量pwhile(*p !='0' && *p <='9' && *p>='0')/while条件循环,条件:*p指向的数组元素不是空字符并且小于等于9并且大于等于0p+;n+;/p移到下一地址,n+1data1=0;/data1赋值0for(i=0;i<n;i+)/for条件循环,条件:
3、i<np-;/p移到上一地址data1+=(*p-'0')*pow(10,i);/赋值data1,p指向的值转换成整数乘以10的i次幂p=p+n;op=*(p+);n=0;while(*p !='0' && *p <='9' && *p>='0')p+;n+;data2=0;for (i=0;i<n;i+)p-;data2+=(*p-'0')*pow(10,i);switch(op)case '+':output=data1+data2;bre
4、ak;case '-':output=data1-data2;break;case '*':output=data1*data2;break;case '/':output=(float)data1/data2;break;default:printf("wrong operatorn");return 0;printf("%5.2f",output);输入1+1;输出2;三、实验环境:Windows XP CT6.0;四、实验过程: 1)输入数据及运算符号首先输入运算符号a 80 实现语句scanf(&q
5、uot;%s",a);然后输入运算的数据;2)数据的计算,使用选择结构switch函数; 对于数据的四则运算进行处理switch(op)case '+':output=data1+data2;break;case '-':output=data1-data2;break;case '*':output=data1*data2;break;case '/':output=(float)data1/data2;break;default:printf("wrong operatorn");return 0
6、;printf("%5.2f",output);五、在实验中遇到的问题及解决方法:在实验中此语句(case '*':output=data1*data2;break;)运行不正确,因此在输出结果时没能够做出正确的运算内容;经过分析发现(break)忘记在后方加入,当其将break加入后结果就能正常的运行了;在实验期间我还遇到其他很多类似的内容,不是忘加“,”就是有的忘记加“;”但最总实验还是成功的编写正确了。 解决问题的方法:通过问指导老师和上网搜素进行的解决。六、实验总结:1)当我们在编写程序中,我们需要处处仔细切还要认真的一步步静下心来编写每一步,否则我
7、们会问题连连不断的出现;总之认真出结果仔细内容对。3体会和收获。 让我们了解到计算器是如何进行当我们输入一些数一步步往下运行的;C语言的编写于运行是自己对编写程序过程中,要仔细每一步的编写,分号的应用。 做到条理清晰分明。遇到问题要学会查找解决的方法(同学间的互相探讨,向指导老师求解等)七、原程序:int main()char a80,*p,op;/定义char型数组a,指针变量*p,char型变量opint n=0,i;/定义整型变量n,i。n赋值0int data1,data2;/定义整型变量data1,data2float output;定义浮点型变量outputscanf("
8、%s",a);/按字符串格式从键盘输入到变量ap=&a0;/数组a的首元素地址赋给指针变量pwhile(*p !='0' && *p <='9' && *p>='0')/while条件循环,条件:*p指向的数组元素不是空字符并且小于等于9并且大于等于0p+;n+;/p移到下一地址,n+1data1=0;/data1赋值0for(i=0;i<n;i+)/for条件循环,条件:i<np-;/p移到上一地址data1+=(*p-'0')*pow(10,i);/赋值
9、data1,p指向的值转换成整数乘以10的i次幂p=p+n;op=*(p+);n=0;while(*p !='0' && *p <='9' && *p>='0')p+;n+;data2=0;for (i=0;i<n;i+)p-;data2+=(*p-'0')*pow(10,i);switch(op)case '+':output=data1+data2;break;case '-':output=data1-data2;break;case '*':output=data1*data2;break;case
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 植物新品种知识培训课件
- 绿色物流园区建设项目合同
- 跨境电商物流合作项目协议
- 电信网络建设和维护服务协议
- 辽宁省大连市高新技术产业园区2024-2025学年七年级上学期期末生物学试题(含答案)
- 河北省保定市博野县博野中学等校2024-2025学年高三下学期3月月考地理试题(含答案)
- 游戏开发行业游戏内购消费协议
- 劳务承揽合同合同补充协议
- 蒸馏精馏知识培训课件
- 离婚协议书制作教程
- 义务消防队组织管理制度模版(2篇)
- 《小麻雀》(课件)西师大版音乐二年级上册
- 危险品车辆安全运输安全生产值班制度(3篇)
- 模块一 银河麒麟桌面操作系统
- 灼口综合征中医治疗
- 光伏发电站项目安全技术交底资料
- DB11∕693-2017 建设工程临建房屋技术标准
- 体育运动中的交流与合作 课件 2024-2025学年人教版(2024)初中体育与健康七年级全一册
- 2024-2025学年全国中学生天文知识竞赛考试题库(含答案)
- 涉密工作标准体系保密管理新规制度
- (正式版)JC∕T 60021-2024 石膏基自流平砂浆应用技术规程
评论
0/150
提交评论