文章目录
前言
这是我学习C语言过程中的一个小练习,后续应该会对计算器进行功能添加和优化
本文主要介绍编程过程中遇到的问题、原因和解决办法
一、编程过程中遇到的错误
1.第二个scanf函数()不等输入就自动执行
2. 编译时报错函数重定义,不同的基类型
3. switch误拼写成swith
二、错误解析
1.经调试可以看出变量a读入了换行符’\n’,查找资料可知:
在scanf()语句中:
-对于参数%d:会忽略缓冲区开头的空白符(空格、回车、制表符等)(无论有几个);
-对于参数 %c:直接读取缓冲区的第一个字符(无论这个字符是什么);[^1]
故在第一个scanf()语句后使用getchar()来读入’\n’。
2.自定义函数未声明就使用了
将函数放到主函数前,或在include语句和宏定义后加上声明
3.低级拼写错误,还仔细看了好久才发现拼写错了
[^1]此部分参考尘鞅cy的博客
三、代码
代码如下:
#include<stdio.h>
void menu()
{
printf("简易计算器\n");
printf("\n");
}
double calc