- 0
- 0
- 约3.37千字
- 约 8页
- 2021-04-18 发布于天津
- 举报
精品文档
精品文档
PAGE
PAGE #欢迎。下载
精品文档
精品文档
2
2欢迎下载
C语言课程设计报告
班级: 16 物联网
、题目说明
1)读取输入信息,能正确进行数字运算
(2)拥有记忆功能,可查询最近几次计算结果并继续进行 数字运算。
、基本功能实现
(1)能实现两个数之间的加减,乘,除,乘方,开方等运算。(2)实现记忆功能,可保留近十位结果,可用 #键查看。(3)*键作为清0键,清除当前屏幕上的值为 0表示重新开三、设计流程(可以画流程图,可以直接写说明)开始1.输入值判断如果输入的是字符如果输入的是数字输入索要执行的操作符和操
(1)
能实现两个数之间的加减,乘,除,乘方,开方等运
算。
(2)
实现记忆功能,可保留近十位结果,可用 #键查看。
(3)
*键作为清0键,清除当前屏幕上的值为 0表示重新开
三、设计流程(可以画流程图,可以直接写说明)
开始
1.
输入值
判断
如果输入的是字符
如果输入的是数字
输入索要执行的操作符和操
作数2
判断
如果为#
如果为q
调用putres()将结果保存
查看历一
史结果
结束
调用yunsuan()计算并输出结
四、代码
#include stdio.h
#include stdlib.h
#include string.h
#include math.h
double yunsuan(double a, char operate, double b); // 处理数值之间的 运算
void PutRes(double array[], double res, int *i); // 保存该次运算结 果
int main()
{
char str[40];
double a = 0;
double b = 0;
double res = 0;
double history[10] = {0,0,0};
char opt;
int i = 0;
printf( 欢迎进入计算功能( eg: 1 \n+ 1 ; # :查询历史结果 ; q: 退 出程序)?…\n);
while(1){
fgets(str,40,stdin); // 将从键盘的一整行标准输入保存在
字符串 str 中
if(sscanf(str,%lf, a) == 1){ // 将 str 以长浮点型的格式放入
a 中,如果返回值为 1,说明输入的是数值,
精品文档
精品文档
PAGE
PAGE #欢迎。下载
精品文档
精品文档
PAGE
PAGE #欢迎。下载
scanf(%c %lf, opt, b); // 获取操作符的值和另外一个操 作数的值
res = yunsuan(a,opt,b); // 调用 yunsuan () 函数计算,
并将结果给 res
printf(%lf %c %lf = %lf\n\n,a, opt, b, res);
PutRes(history, res, i); // 调用函数 PutRes() 将本次结果
保存到数组 history 中( i 用引用传递)
// printf(%d\n, i);
}else if(sscanf(str,%c,opt) == 1){ // 将 str 以字符型的格式放 入 opt 中,如果返回值为 1,说明输入的是字符
if(opt == #){ // 如果 opt 为‘ #,则显示
history 中的数值
int j = 0;
for(j = 0; j i; ++j){ //i 为 history 中存放的数值
个数
printf( %lf , history[j]);
}
printf(\n);
}else if(opt == + || opt == - || opt == * || opt == /
|| opt ==){ // 如果为操作符,则为连续运算,则下面秩序获得 b的值,
a 的值则为上次运算结果
scanf(%lf, b);
opt = str[0]; // 因为 str 是字符串,而 opt
是字符,所以不能直接赋值, 上句判断出 str 是字符, 所以是只有一个字符的字 符串,故可以这样赋值
a = res;
res = yunsuan(a,opt,b); printf(%lf %c %lf = %lf\n\n,a, opt, b, res);
PutRes(history, res, i);
q退出程序}else if(opt ==
q退出程序
printf(Bye Bye );
return 0;
}
}
}
return 0;
}
/* 功能:处理数值之间的运算 参数 1:操作数 1 参数 2:操作方式 参数 3:操作数 2 返回值:两数值的运算结果。
*/
dou
您可能关注的文档
- 2020初中德育个人工作总结.docx
- 2020年最新人教版七年级下册-英语单词.docx
- 2020元旦节祝福语大全2020元旦节祝福语大全100以上精选.docx
- answer-第二章-WindowsXP操作系统选择题.docx
- HSE现场检查表资料.docx
- Java期末考试题与答案.docx
- PH计电极维护方法.docx
- XXX环境保护管理办法.docx
- XX养老金保险条款(标准).docx
- 安徽省物业服务标准.docx
- 伟明环保-市场前景及投资研究报告-境内业务稳健运行,印尼市场贡献边际增量.pdf
- 桂东县法院系统招聘考试真题2025.pdf
- 贵州省黔南布依族2026年中考三模物理试题及答案.pdf
- 贵州省黔南州2026年中考语文二模试卷附答案.pdf
- 贵州省铜仁市2026年中考语文二模试卷附答案.pdf
- 2026上半年安徽事业单位联考合肥市庐江县招聘36人备考题库及一套完整答案详解.docx
- 贵州省毕节市2026年中考语文一模试卷附答案.pdf
- 贵州省贵阳市南明区2026年中考语文一模试卷附答案.pdf
- 2026上半年安徽事业单位联考合肥市庐江县招聘36人备考题库及一套参考答案详解.docx
- 贵州省贵阳市白云区2026年中考二模物理试题附答案.pdf
最近下载
- 贫困户专项贷款业务申请表.docx VIP
- 2025年AWS认证AWSDataSync与SnowballEdge结合的大规模数据迁移方案专题试卷及解析.pdf VIP
- 2025年演出经纪人通过组织小型沙龙、读剧会等人脉活动主动建圈专题试卷及解析.pdf VIP
- 2025年演出经纪人演出市场主体准入中的专业人员配备要求专题试卷及解析.pdf VIP
- 2025年金融风险管理师外汇储备管理与币种结构决策专题试卷及解析.pdf VIP
- 2025电信转正考试参考题库(含答案解析).docx VIP
- 《低空无人驾驶航空器起降场地安全通用要求》.pdf VIP
- 基于代谢组学的肥胖症个性化干预数字方案.pdf VIP
- 低空飞行气象安全通用要求.docx VIP
- 内镜中心应急预案.pdf VIP
原创力文档

文档评论(0)