c语言编写计算器程序

Python012

c语言编写计算器程序,第1张

C语言编写计算器

我们可以用printf和scanf函数输出结果和获取用户的输入。需要<stdio.h>头文件。scanf函数在读取数据的时候不需要再一行上输入每个数据,只要数据和数据之间留出空白就可以了。先声明两个变量number1和number2,operation变量用来存储运算符。用scanf函数获取这两个数字和运算符。分别用%lf %c %lf

请点击输入图片描述

然后需要检测输入是否是正确的,检查是不是+ - * / %,在这里要用到switch函数,用来看operation变量是否别传入了正确的值。

switch(operation)

{

case '+':

printf........

}

具体的运算我们只需要再case之后的printf语句中设定和输出就可以了。

请点击输入图片描述

由于除法和取余运算比较特殊,我们单独说明。除法的除数不能为零,所以除法需要检测除数是否为零,只需要用if else语句就可以,if(number2 == ),取余运算符对于浮点数没有意义,所以将浮点数转换为long类型,强制类型转换,if((long)number2 == 0)   else ,这样整个代码就完成了。

请点击输入图片描述

简单计算器的编辑并不难,但是要注意一些细节,除法的处理要注意除数不能为零的情况,而且取模运算要将两个操作数转化为整型,当然,作为真正的计算器,只实现这些功能是不够的,还需要更多的功能,不过有一个好的开始也不错。

下面我们就运行一下这个程序吧。25*13的值和8%5的值。可以看到是我们期望的值。

请点击输入图片描述

请点击输入图片描述

#include<stdio.h>

int main() {

double num1 = 0 //输入1

double num2 = 0 //输入2

char ch //操作

double ret = 0 //结果 printf( "输入第一个数:" )

scanf( "%lf", &num1 )

printf( "输入第二个数:" )

scanf( "%lf", &num2 )

printf( "操作[+ - * /]:" )

getchar()

scanf( "%c", &ch ) switch( ch ) {

case '+':

ret = num1 + num2

break

case '-':

ret = num1 - num2

break

case '*':

ret = num1 * num2

break

case '/':

ret = num1 / num2

break

default:

break

}

printf( "结果:%.2lf\n", ret ) return 0

很少用tc的,tc功能不强大,好多地方要严格。tc不支持中文显示,将中文全改成英文,否则运行后会显示的中文部分将变成乱码。还有里面的一些语句应该标准化一下,该有返回值的最好加上,强制类型转化的地方自己动手实现,不依靠系统,兴许就可以在tc2上运行了。