当前位置:首页 » 编程语言 » c语言计算器数字符号
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

c语言计算器数字符号

发布时间: 2022-06-08 11:21:19

❶ 怎样用c语言实现计算器功能

设定一个数组变量a[10],初始化为0;设定一个字符串变量c[20],初始化为x;设定一个循环控制变量i,j,初始化为0;定义一个结果变量sum,初始化0
开始循环,读取a[i],读取c[i] ;判断c[i]是否是‘=’,不是则继续读取,是则循环结束
输出a[0],输出c[0],j++,sum=a[0];计算循环开始,case语句,如果c[j]为‘+’,则sum+=a[j];+-*\等等符号,括号的话要另设变量。
以此类推。最后当c[j]是‘=’时,循环结束,输出sum

❷ c语言编写计算器程序

C语言编写计算器

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

❸ 用简单c语言编写计算器

#include"stdio.h"
/*预处理命令*/
void
main()
/*主函数*/
{
double
a,b;
/*双精度实型变量说明*/
char
c,d;
/*变量说明*/
do
/*循环体*/
{
printf("input
a
(-*/)b\n");
/*输入提示*/
scanf("%lf%c%lf",&a,&c,&b);
/*输入算术表达式*/
if(c=='
')
/*判断
*/
printf("=%0.2f",a
b);
/*输出a
b的值*/
else
if(c=='-')
/*判断-*/
printf("=%0.2f",a-b);
/*输出a-b的值*/
else
if(c=='*')
/*判断**/
printf("=%0.2f",a*b);
/*输出a*b的值*/
else
if(c=='/')
/*判断/*/
printf("=%0.3f",a/b);
/*输出a/b*/
else
/*不满足以上条件*/
printf("error");
/*输出错误*/
printf("\n\ninput\n");
/*输入\n*/
scanf("%c",&d);
/*输入符号给d*/
}
/*循环体结束*/
while(d=='\n');
/*循环条件语句*/
}

❹ 怎样用C语言编写一个简单的可以进行加减乘除运算混合运算的计算器

用C语言编写一个简单的可以进行加减乘除运算混合运算的计算器的方法:

1、打开visual C++ 6.0-文件-新建-文件-C++ Source File;

❺ C语言实现简单的计算器

给你写了个简单的,你看看吧~
只需要输入1*3*4/7+5+6-3 这样的算式就可以了,
最后用回车或非运算符结束输入。

#include <stdio.h>
int main()
{
printf("请输入算式:\n");
double a,b;//定义两运算值
char sign;//定义符号接收值
scanf("%lf",&a);//先取得一个计算值
enum {A,B}f;//定义枚举判断循环,你可以去查查枚举的用法
f = B;//给枚举量赋值
while(f)//定义循环
{
sign = getchar();//接收符号。
if(sign == '+' ||sign == '-' ||sign == '*' ||sign == '/')
{//判断符号为运算符,方可接收下一个运算值。
scanf("%lf",&b);
}
switch (sign) //判读调用不同的运算函数
{
case '+':
a = a+b;break;
case '-':
a = a-b;break;
case '*':
a = a*b;break;
case '/':
a = a/b;break;
default:
f=A;//实际上A是0,所以就可以跳出循环。
}
}
printf("%lf\n",a);
return 0;
}

❻ 用C语言编写一个计算器的程序 ,而且可以有多个运算符

# include <stdio.h>
int main(void)
{
double a, b;
int chose;

printf("欢迎使用我的计算器\n");
while (1)
{
printf("********************\n");
printf("1、两数相加\n");
printf("2、两数相减\n");
printf("3、两数相乘\n");
printf("4、两数相除\n");
printf("5、退出\n");
printf("********************\n");

scanf("%d", &chose);

/* if (chose<1 || chose>5)
{
printf("你的输入有误,请重新输入!\n");
continue;
}*/

switch (chose)
{
case 1:
printf("请输入第一个数字:\n");
scanf("%lf", &a);
printf("请输入第二个数字:\n");
scanf("%lf", &b);
printf("%lf+%lf = %lf\n", a, b, a+b);
break;
case 2:
printf("请输入第一个数字:\n");
scanf("%lf", &a);
printf("请输入第二个数字:\n");
scanf("%lf", &b);
printf("%lf-%lf = %lf\n", a, b, a-b);
break;
case 3:
printf("请输入第一个数字:\n");
scanf("%lf", &a);
printf("请输入第二个数字:\n");
scanf("%lf", &b);
printf("%lf*%lf = %lf\n", a, b, a*b);
break;
case 4:
printf("请输入第一个数字:\n");
scanf("%lf", &a);
printf("请输入第二个数字:\n");
scanf("%lf", &b);
printf("%lf/%lf = %lf\n", a, b, a/b);
break;
case 5:
printf("再见!\n");
return ;
default:
printf("你的输入有误,请重新输入!\n");
continue;

}

}
}

❼ 用C语言编写一个计算器程序

#include<stdio.h>
#include<windows.h>
#include<math.h>
#define p 3.1415926
#define r p/180 //r=p/180,p=3.14....,p/180是求的1弧度,下面sin(里面要求的是弧度),sin(30弧度)=0.5。 void main()
{
float i,j,k;
int l,m,n,a[10];
char cmd;
LOOP:
system("cls");
printf("***********************\n");
printf("*******小寒计算器******\n");
printf("***********************\n");
printf("\n\n本计算器提供+、-、*、/四种运算。\n");
printf("p-代表圆周率pai。\n");
printf("a-代表十进制转换为二进制。\n");
printf("b-代表十进制转换为八进制。\n");
printf("c-代表十进制转换为十六进制。\n");
printf("d-代表该数值开方。\n");
printf("e-代表该数值开立方。\n");
printf("f-代表求几次方。\n");
printf("S-代表sin。\n");
printf("C-代表cos。\n");
printf("T-代表tan。\n");
printf("\n\n请输入要计算的数字和运算符号,输入“#”时,结束;输入“!”时复位。\n");

scanf("%f",&k);
while((cmd=getchar())!='#')
{
if(i!=0)
switch(cmd)
{
case '+': scanf("%f",&i);
k=k+i;
printf("=%5.2f",k);
break; case '-': scanf("%f",&i);
k=k-i;
printf("=%5.2f",k);
break; case '*': scanf("%f",&i);
k=k*i;
printf("=%5.2f",k);
break; case '/': scanf("%f",&i);
k=k/i;
printf("=%5.2f",k);
break;

case 'p': k=k*p;
printf("%6.4f",k);
break; case 'f': printf("请输入要求该数字的几次方:");
scanf("%d",&n);
i=k;
for(m=0;m<n-1;m++)
k=k*i;
printf("%5.2f",k);
break; case 'a': printf("转换成二进制\n");
m=0;

while((int)k>0)
{
l=k;
k=k/2;
l=l%2;
a[m]=l;
m++;
}
for(n=m-1;n>=0;n--)
printf("%d",a[n]);
break; case 'b': printf("转换成八进制\n");
m=0;
while((int)k>0)
{
l=k;
k=k/8;
l=l%8;
a[m]=l;
m++;
}
for(n=m-1;n>=0;n--)
printf("%d",a[n]);
break;

case 'c': printf("转换成十六进制\n");
m=0;
while((int)k>0)
{
l=k;
k=k/16;
l=l%16;
a[m]=l;
m++;
}
for(n=m-1;n>=0;n--)
{
if(a[n]==10)
{ printf("A");continue;}
else if(a[n]==11)
{ printf("B");continue;}
else if(a[n]==12)
{ printf("C");continue;}
else if(a[n]==13)
{ printf("D");continue;}
else if(a[n]==14)
{ printf("E");continue;}
else if(a[n]==15)
{ printf("F");continue;} printf("%d",a[n]);
}

break;
case 'e': printf("该数值开立方得\n");
i=pow(k,1.0/3);
printf("%5.2f",i );
break;

case 'd': printf("该数值开方得\n");
i=k/2;
j=sqrt(k);
printf("%5.2f",j);
break; case 'S': k=k*r;
i=sin(k);
printf("%5.2f",i);
break;

case 'C': k=k*r;
i=cos(k);
printf("%5.2f",i);
break; case 'T': k=k*r;
i=tan(k);
printf("%5.2f",i);
break; case '!': goto LOOP;

}

}
}

❽ 怎样用C语言程序实现计算器功能,要求液晶显示


计算器
那种'8;字型液晶吗?
那种要参考LED显示的线路,哪个线路对应哪个位,然后把这些对应的值先写出来,再用C语言
逻辑
加以控制(运算).
说个
思路
:
比如数字"8"对应的位为:1111
1110(因为要显示数字8的话,7个LED管都要亮,而最后一位为
小数点
.这里只是打个比方,要去查LED对应的位.我记得小数点不是最后一位)
那么unsighed
char
number8=0xfe;(1111
1110)
以此类推,
运算的时候,输入数字,
符号
,数字,等于.
伪代码
如下:
输入数字;
int
num1=0;//第一个数
int
num2=0;//第二个数
char
oper
=
'\0';
if(input
>='0'
&&input<='9')//这个应该是ASCII码,应该是
按键
的扫描码.
单片机
里面不一样.我这只是写个思路.
{//如果输入的是0-9的数字
num1=num1*10+input;//把之前的数乘个10,再把输入的数加到个位.计算器都是这么用的.
count1++;
}
else
{
switch(input)
{
case
'+'://按了
加号
,那么第一个数输入完毕了.
oper
=
'+';//这里我也只是写个思路,不用这样等.
结束输入第一个数的循环;
break;
}
}
输入第二个数的逻辑差不多,就是最后输入完毕时候是输入符号后,要把值算出来.
switch(oper)
{
case
'+'://加法
result
=
num1+num2;
break;
case
'-'//减法
result
=
num1
-
num2;
break;
///其余类似
}
最后输出阶段:
输出那个result;
从最高位开始输出:
int
t=0;bool
first=true;
for(int
l=max;l>0;l--)//这里的max是显示部分能显示多少位
{
t
=
result/pow(10,l);
if(t!=0)
first
=false;//第一个不是0了
if(!first)
{
output(t,l);//把t输出到LED的l位上
result
-=
t*pow(10,l);//输出一位少相应的值.
}
}//这个
算法
没有考虑小数.小数自己研究研究吧.
output(int
t,int
l)//大概这样的
{
switch(t)
{
case
'1':....
//把对应
电路
的位设置为高电位,比如8
case
'8':
电路控制端=number8;//就是前面那个1111
1110,也就是0xfe.
其余数字的
组合方法
查LED
手册
.用的哪种LED就查哪种LED的手册.有的不一样
}
}

❾ 用C语言编程实现一个简单的四则运算计算器

#include <stdio.h>

//函数,读数操作数
int getNextNum()
{
int ret;
scanf("%d",&ret);
return ret;
}

//函数,读运算符
char getOpt()
{
return getchar();
}

//函数,计算
int caculate(int op1 , int op2 ,char opt)
{
if(opt=='+')return op1+op2;
if(opt=='-')return op1-op2;
if(opt=='*')return op1*op2;
if(opt=='/')return op1/op2;
return 0;
}

int main()
{
int op1,op2;
char opt;
//计算结果放在第一个操作数
op1 = getNextNum();
while(1)
{
opt = getOpt();
if ( opt == '=' ) break;
op2 = getNextNum();
op1 = caculate(op1,op2,opt);
}
printf("%d\n",op1);
}
return 0;
}

❿ c语言编写“多功能计算器”的代码

#include<stdio.h>
#include<windows.h>
#include<math.h>
double
EPS=10E-6;
double
sum(double
a,double
b)
{
return
a+b;
}
double
sub(double
a,double
b)
{
return
a-b;
}
double
mul(double
a,double
b)
{
return
a*b;
}
double
divv(double
a,double
b)
{
return
a/b;
}
int
rem(int
a
,
int
b)
{
return
a%b;
}
int
addnumber(int
c,int
d)
{
int
sum=0;
for(int
i=c;i<=d;i++)
{
sum+=i;
}
return
sum;
}
int
factor(int
n)
{
int
f=1;
for(int
i=1;i<=n;i++)
{
f*=i;
}
return
f;
}
void
displaymenu()
{
printf("@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
\n");
printf("*############高级计算器############*
\n");
printf("************************************
\n");
printf("*
①加法运算
*
\n");
printf("*
②减法运算
*
\n");
printf("*
③乘法运算
*
\n");
printf("*
④除法运算
*
\n");
printf("*
⑤取余运算
*
\n");
printf("*
⑥累加运算
*
\n");
printf("*
⑦阶乘运算
*
\n");
printf("*
⊙结束运算
*
\n");
printf("************************************
\n");
printf("************************************
\n");
}
void
main()
{
int
c,d;
/*用于做四则运算的两个数值的说明*/
double
a,b;
/*用来做累加函数的两个参数值的说明*/
int
intresult;
double
result;
/*用于保存表单运算中函数的返回值*/
int
choice;
displaymenu();/*保存用户选择项目菜单项*/
while(1)
{
printf("请选择你所进行运算项目的符号:");
scanf("%d",&choice);
switch(choice)
{
case
1:
/*加法计算*/
printf("请输入两个数字:");
scanf("%lf%lf",&a,&b);
result=sum(a,b);
printf("%lf+%lf的计算结果是:%lf\n",a,b,result);
break;
case
2:
/*减法计算*/
printf("请输入两个数字:");
scanf("%lf%lf",&a,&b);
result=sub(a,b);
printf("%lf-%lf的计算结果是:%lf\n",a,b,result);
break;
case
3:
/*乘法计算*/
printf("请输入两个数字:");
scanf("%lf%lf",&a,&b);
result=mul(a,b);
printf("%lf*%lf的计算结果是:%lf\n",a,b,result);
break;
case
4:
/*除法计算*/
{
scanf("%lf%lf",&a,&b);
if(b-0.0<EPS)
printf("数字错误\n");
else
{
printf("请输入两个数字:");
result=divv(a,b);
printf("%lf/%lf的计算结果是:%lf\n",a,b,result);
}
break;
}
case
5:
/*取余计算*/
printf("请输入两个数字:");
scanf("%d%d",&c,&d);
result=rem(c,d);
printf("%d
%
%d的计算结果是:%d\n",c,d,result);
break;
case
6:
/*累加计算*/
printf("请输入两个整数");
scanf("%d%d",&c,&d);
intresult=addnumber(c,d);
printf("%d-%d的累加计算结果是:%d\n",c,d,intresult);
break;
case
7:
//阶乘计算
{
printf("请输入一个大于0小于10的整数字");
scanf("%d",&c);
if(c<0||c>10)
{
printf("请输入一个大于0小于10的整数字,数据错误。\n");
break;
}
intresult=factor(c);
printf("%d的阶乘计算结果是:%d\n",c,intresult);
break;
}
case
0:
printf("谢谢使用。欢迎下次再用。\n");
return
;
default:
printf("选择错误,程序结束\n");
break;
}
}
}