如何使用C语言实现一个简单的计算器

作者&投稿:只纪 (若有异议请与网页底部的电邮联系)
怎样用C语言编写一个简单的可以进行加减乘除运算混合运算的计算器?~

用C语言编写一个简单的可以进行加减乘除运算混合运算的计算器的方法:
1、打开visual C++ 6.0-文件-新建-文件-C++ Source File;

2、输入预处理命令和主函数:
#include /*函数头:输入输出头文件*/
void main()/*空类型:主函数*/

3、定义变量:
int a,b,d; /*定义变量的数据类型为整型*/
char c;/*定义变量的数据类型为字符型*/

4、输入四则运算式:
printf("输入如“3*4”或“5+2”的四则运算式:");/*输出文字提示*/
scanf("%d%c%d",&a,&c,&b);/*输入四则运算式*/

5、判断运算符号:
switch(c) /*判断运算符号*/
{
case'+':d=a+b;break;/*进行加法运算*/
case'-':d=a-b;break;/*进行减法运算*/
case'*':d=a*b;break;/*进行乘法运算*/
case'/':d=a/b;break; /*进行除法运算*/
}

6、输出结果:
printf("%d%c%d=%d
",a,c,b,d);/*输出结果*/

完整的源代码:
#include /*函数头:输入输出头文件*/
void main()/*空类型:主函数*/
{
int a,b,d;/*定义变量的数据类型为整型*/
char c;/*定义变量的数据类型为字符型*/
printf("输入如“3*4”或“5+2”的四则运算式:");/*输出文字提示*/
scanf("%d%c%d",&a,&c,&b);/*输入四则运算式*/
switch(c)/*判断运算符号*/
{
case'+':d=a+b;break;/*进行加法运算*/
case'-':d=a-b;break;/*进行减法运算*/
case'*':d=a*b;break;/*进行乘法运算*/
case'/':d=a/b;break;/*进行除法运算*/
}
printf("%d%c%d=%d
",a,c,b,d);/*输出结果*/
}

#include
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
", ret ); return 0;
} 写个简单易懂的,你操作计算器的步骤就是编写程序的思路呀

#include<stdio.h>

main()

{

float a[100];

int i,j;

char b[100];

while(1)

{

for(i=0;i<=99;i++)

{

scanf("%f%c",&a[i],&b[i]);

if(b[i]=='=') break;

}

for(j=0;j<=i;j++)

{

switch(b[j])

{

case '+':a[j+1]=a[j]+a[j+1];break;

case '-':a[j+1]=a[j]-a[j+1];break;

case '*':a[j+1]=a[j]*a[j+1];break;

case '/':a[j+1]=a[j]/a[j+1];break;

case '=':printf("%f
",a[j]);

}

}

}

getch();

}

说明:输入格式为"10.2+1.8/3=",记住

最后一定要输入"=",再敲回车键,在

TC中运行要加"getch();"以显示结果。 

回复:我用的是VC++6.0,调试和运行都

无异常,是不是你最后忘记加等号了,

还是输入数字之后加了空格,为了输入

的方便,我没有设计加空格,直接输入

就可以了,比如输入“3+4-5/2=”,输

出“1.000000",如还有问题可加我。



1.#include <stdio.h>
#include <math.h>
#include <stdlib.h>
//预处理指令
int main(void)
{
double bNumber, Number, Result; //给加减乘除定义的变量
int No; //选项的定义变量
double a, b, c, x1, x2, Rad; //给一元一次方程定义的变量
int Ary_10; //定义进制的变量
char string[32]; //二进制变量定义

system ("title 简单计算器 —— By:HaGit"); //程序窗口上的标题

while(1)
{
//界面
printf ("┏ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┓\n");
printf ("┇请选择你要计算的方法: ┇\n");
printf ("┣ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┫\n");
printf ("┇ 加法请按_1 进制转换_5 ┇\n");
printf ("┇ 减法请按_2 求一元二次方程_6 ┇\n");
printf ("┇ 乘法请按_3 ┇\n");
printf ("┇ 除法请按_4 退出_0 ┇\n");
printf ("┗ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┛\n");
printf ("Please write down the number:");
scanf ("%d",&No);

if (No == 1)
{
// 加法
printf (" 请输入被加数:");
scanf ("%lf",&bNumber);
printf (" 请输入加数:");
scanf ("%lf",&Number);
Result = bNumber + Number;
printf (" 结果是: %lf\n\n",Result);
}
else if (No == 2)
{
// 减法
printf (" 请输入被减数:");
scanf ("%lf",&bNumber);
printf (" 请输入减数:");
scanf ("%lf",&Number);
Result = bNumber - Number;
printf (" 结果是: %lf\n\n",Result);
}
else if (No == 3)
{
// 乘法
printf (" 请输入被乘数:");
scanf ("%lf",&bNumber);
printf (" 请输入乘数:");
scanf ("%lf",&Number);
Result = bNumber * Number;
printf (" 结果是: %lf\n\n",Result);
}
else if (No == 4)
{
// 除法
printf (" 请输入被除数:");
scanf ("%lf",&bNumber);
printf (" 请输入除数:");
scanf ("%lf",&Number);
Result = bNumber / Number;
printf (" 结果是: %lf\n\n",Result);
}
else if (No == 5)
{
//进制转换的代码
printf("请输入需要转换的十进制数:");
scanf("%d", &Ary_10);
itoa (Ary_10, string ,2);
printf("二进制: %s\n", &string);
printf("八进制: %o\n", &Ary_10);
printf("十六进制: %x\n", &Ary_10);
}
else if (No == 6)
{
//求一元二次方程的解的代码
printf("请输入一元一次方程的a,b,c三个数:");
scanf("%lf%lf%lf",&a,&b,&c);
Rad = b*b - 4*a*c;
if (Rad > 0)
{
x1 = -b + sqrt(Rad) / (2*a);
x2 = -b - sqrt(Rad) / (2*a);
printf("有两个解 x1 = %lf, x2 = %lf\n", &x1, &x2);
}
else if (Rad == 0)
{
x1 = -b / (2*a);
printf("只有一个解 x1 = %lf\n", &x1);
}
else
{
printf("无解\n");
}
}
else if (No == 0)
{
// 退出程序
break;
}
else
{
// 输入的选项不对
printf(" 请输入正确的数字。\n\n");
}
system ("pause"); //按任意键继续
system ("cls"); //清屏
}
return 0;
getchar();
}

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int main()
{
char s[101],x[101],y[101],*t,op;
gets(s);
int i,j,n=strlen(s);
double a,b;
for(i=j=0;s[i]!=' ';i++)
x[j++]=s[i];
x[j]=0;
a=strtod(x,&t);
i++;
for(j=0;i<n;i++)
{
if(j==0)
{ op=s[i++];
i++;
}
y[j++]=s[i];
if(s[i]==' ')
{
y[j]=0;
b=strtod(y,&t);
j=0;

}
if(j==0)
switch(op)
{
case '+':a+=b;break;
case '-':a-=b;break;
case '*':a*=b;break;
case '/':a/=b;break;
};
}
printf("%f\n",a);
}


用c语言实现一个简单的学生成绩管理系统,包括:学号,姓名,科目,成绩_百...
\/\/用字符界面实现,比如按数字1,可以录入学生所有信息;\/\/按数字2,显示所有学生成绩;\/\/按数字3,进入查询,按学号或姓名查询该学生是否存在,如果存在显示他的所有信息,\/\/\/否则给出不存在提示。#include <stdio.h>struct student{ char num[6]; \/*学号*\/ char name[10]; char ...

如何使用C语言实现一个简单的计算器
include<stdio.h> main(){ float a[100];int i,j;char b[100];while(1){ for(i=0;i<=99;i++){ scanf("%f%c",&a[i],&b[i]);if(b[i]=='=') break;} for(j=0;j<=i;j++){ switch(b[j]){ case '+':a[j+1]=a[j]+a[j+1];break;case '-':a[j+1]=a[...

C语言中怎么实现一问一答
1.比如输入你叫啥,程序内设个判断,是 你叫啥 就输出张三 2.人工智能,这玩意就复杂了,不过对于这个问题不算难,用正则表达式

用C语言怎样编写一句话
工具\/原料 VC++6.0 电脑 方法\/步骤 1、首先,打开编译器,新建文件。出现的空白处是写代码的。2、输入”#include<stdio.h>“这个为头文件。3、第二行,输入”main“,加上一对”小括号“。4、在main,下方,输入一对大括号 {}。5、在大括号里输入,”printf("Hello,Word\\n");”。6、...

用C语言编程实现一个简单的学生成绩管理系统
stu *p=NULL;\/\/ 指针,指向个待插入的结点stu *q=NULL;\/\/ 指针,用于在其后插入结点head = NULL;\/\/ 一开始链表为空FILE * r =fopen("input.dat","r"); p = (stu*)malloc(sizeof(stu));while(fscanf(r,"%s%s%f%f%f",p->num,p->name,&p->score[0],&p->score[1],&p->...

在c语言中如何输入一个整数?
在C语言中,可以使用scanf和printf函数实现整数的输入输出。以下是整数的示例代码:在上面的代码中,我们首先定义了一个整型变量num,然后使用printf函数提示用户输入一个整数。接着,使用scanf函数读取用户输入的整数,并将其存储到num变量中。最后,使用printf函数输出用户输入的整数。♡♡ 有...

如何用c语言输入一个整数并输出?
以下是C语言代码实现从键盘输入一个整数,然后输出这个数字的平方和立方的结果:首先使用 printf 函数提示用户输入一个整数,并使用 scanf 函数从键盘读入该整数,存储在变量 num 中。然后分别计算这个整数的平方和立方,将结果存储在变量 square 和 cube 中。最后使用 printf 函数输出这个整数的平方和立方...

怎么用C语言的scanf实现一次输入若干个数据
根据需要一般选择如下3种方法:1,已知数量,且个数较少:scanf("%d%d%d",&a&b&c);2,已知数量,但数量较多:for(int i=0;i<n;i++)scanf("%d",&a[i]);3,不知道数量 int i=0;while(scanf("%d",&a[i])){ i++;}

如何使用C语言编写及实现程序
C语言是一种通用的程序设计语言,它包含了紧凑的表达式、丰富的运算符集合、现代控制流以及数据结构等四个部分.C语言功能丰富,表达能力强,使用起来灵活方便;它应用面广,可移植性强,同时具有高级语言和低级语言的优点,因此,在工程计算及应用程序开发中得到了广泛的应用.众所周知,对于C语言的初学者来说,最...

c语言中如何实现一个数n次幂的平方?
1、C语言中计算一个数的N次方可以用库函数pow来实现,还可以直接使用2^3就可以算出结果。pow函数原型:double pow(double x,double y)。其中x值是底数,y值是幂。举例:double a=pow(3.14,2)计算3.14的平方。注意:使用pow函数时,需要将头文件#include<math.h>包含进源文件中。2、在C语言...

西夏区17347921045: 用C语言编写一个简单的计算器1 -
邹泄化癥: #include<stdio.h> int main() {double num1 = 0; //输入1double num2 = 0; //输入2char ch; //操作double ret = 0; //结果 printf( "输入第一个数:" );scanf( "%lf", &num1 );printf( "输入第二个数:" );scanf( "%lf", &num2 ); ...

西夏区17347921045: c语言程序编写(初学)(1) 编写一个简单计算器程序,输入格式为:data1 op data2.其中data1和data2是参加运算的两个数,op为运算符,其取值只能是+... -
邹泄化癥:[答案] #includemain(){ char op; float result,data1,data2; float OP(float x,float y,char t); printf("input op(+,-,*,/):\n",op); scanf("%c",&op); printf("input data1:\n",data1); scanf("%f",&data1); pr...

西夏区17347921045: C语言实现的简易计算器 -
邹泄化癥: 展开全部#include void main() { float a,b,i=0;char yun;mama: printf("\n请输入运算符和要计算的两个数:"); main:if(i<3) {fflush(stdin); scanf("%c%f%f",&yun,&a,&b);switch(yun) { case '+':printf("%.2f+%.2f=%.2f",a,b,a+b); break; case '-':...

西夏区17347921045: C语言的简单计算器怎么做 -
邹泄化癥:#include int main(void){long a,b;long max;char c;printf("请输入a,b的数值.\n");scanf("%ld%c%ld",&a,&c,&b);switch (c) {case '+':max=a+b;break;case '-':max=a-b;break;case '*':max=a*b;break;case '/':max=(float)...

西夏区17347921045: c语言设计一个简单的计算器程序
邹泄化癥: /* 2013年12月23日 12:43:46 目的:计算器的实现 */ # include <stdio.h> # include <ctype.h> # include <math.h> char get_choice(void); //获取用户输入的选项,并建立目 char get_first(void); //获取用户输入的选项,并剔除错误输入 float get_int(...

西夏区17347921045: 怎样用C语言编个简单的计算器 ?
邹泄化癥: #include <stdio.h> #include <stdlib.h> void min() { float a,b; char op; printf("输入第一个数:"); scanf("%f",&a); fflush(stdin); printf("输入一个运算符+-* /:"); scanf("%c",&op); fflush(stdin); printf("输入第二个数:"); scanf("...

西夏区17347921045: 如何使用C语言实现一个简单的计算器 -
邹泄化癥: #include#include#include int main(){ char s[101],x[101],y[101],*t,op; gets(s); int i,j,n=strlen(s); double a,b; for(i=...

西夏区17347921045: 用C语言编写一个简单的计算器 -
邹泄化癥: #include int main() { double num1 = 0; //输入1 double num2 = 0; //输入2 char ch; //操作 double ret = 0; //结果 printf( "输入第一个数:" ); scanf( "%lf", &num1 ); printf( "输入第二个数:" ); scanf( "%lf", &num2 ); printf( "操...

西夏区17347921045: 如何使用C语言做一个简单的计算器 -
邹泄化癥: #include <iostream> using namespace std; int main() { int a,b; char c; cin>>a; cin>>c; cin>>b; switch(c) { case '+':printf("%d+%d=%d\n",a,b,a+b);break; case '-':printf("%d-%d=%d\n",a,b,a-b);break; case '*':printf("%d*%d=%d\n",a,b,a*b);...

西夏区17347921045: 怎么用C语言编写一个计算器程序? -
邹泄化癥: #include<stdio.h> #include<math.h> main() { float a,b; char c; printf("please input the expression:"); scanf("%f%c%f",&a,&c,&b); swich(c) { case'+': printf("%f",a+b); case'-': printf("%f",a-b); case'*': printf("%f",a*b); case'/': if(b==0)printf("wrong!"); elseprintf("%f",a/b); break; default: printf("wrong!"); } }

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网