c语言中函数四则运算 c语言中四则运算符号
C语言怎么实现任意两个数的四则运算?
C语言实现任意两个数的四则运算的方法:
创新互联10多年成都企业网站建设服务;为您提供网站建设,网站制作,网页设计及高端网站定制服务,成都企业网站建设及推广,对汽车玻璃修复等多个行业拥有丰富的网站制作经验的网站建设公司。
1、阅读代码,使用了随机函数:srand(unsigned( time(NULL)));通过调用随机函数,将生成的100以内的随机整数赋给不同的变量,一部分用于四则运算式数据的来源,而赋给变量c的随机数则用于结合switch语句控制程序跳转执行 不同的分支,即不同的四则运算,如下:
c = rand() % 5; //随机产生小于5的非负整数
switch (c)
case 0:
case 1:
...........
case 5:
2、使用while语句控制除数不为0
while (b == 0)
{
b = rand() % 1; //若b=0则重新生成b,直到b不为0
}
3、使用if语句判断减数与被减数的大小。
if (a b) //使ab
{
d = a;
a = b;
b = d;
}
if (m n) //使mn
{
d = m;
m = n;
n = d;
}
通过if判断并赋值的手段保证结果不出现负数
4、 原代码仅能一次性生成20个随机的四则运算式,而无法从键盘输入结果并判断答案正确与否。
5、修改代码。由于原代码无法从键盘读入数据,所以对其进行了改进。
(1)增加键盘读入功能
scanf("%d",x);
从键盘读入输入的答案
(2)对答案进行正确与否的判断
if(x == (a+b))
printf("You are right!\n");
else
printf("You are wrong!\n");
通过比较输入答案与运算得出的答案告知用户计算是否正确。
6、上传源代码至GitHub。
C语言编程 主函数输入两个整数,用四个函数去求四则运算呢结果,主函数分别调用四个函数,打印结果。
#includestdio.h
void main()
{
int a(int x,int y);int b(int x,int y);
int c(int x,int y);float d(float x,float y);
int x,y;
scanf("%d,%d",x,y);
printf("x=%d,y=%d.\nx+y=%d.\nx-y=%d.\nx*y=%d.\nx/y=%f.\n",x,y,a(x,y),b(x,y),c(x,y),d(x,y));
}
int a(int x,int y)
{
return(x+y);
}
int b(int x,int y)
{
return(x-y);
}
int c(int x,int y)
{
return(x*y);
}
float d(float x,float y)//注意算除法的时候形参定义为float型的,否则x/y会自动取整
{
return(x/y);
}
c语言编四则运算器程序
分类: 电脑/网络 程序设计 其他编程语言
问题描述:
功能为;首先有一个界面问"请输入你想进行运算的对象个数”
这个数在一至5之间
然后出来界面让输入算术式
然后输入结果
然后有计算机判断对错
解析:
哈哈,刚好,我也在学C语言,碰巧,这几天也正在思考编写计算器的问题.网上应该能找到经典的C程序计算器,这个是我独立写出来的.
我只学到数组这里.所以没用到堆栈,指针之类的.主要用数组,循环与函数调用实现.完全是入门级.
支持四则运算和指数运算(用h符)。
数据类型为float型。
算术式最大长度可以通过修改程序中的数组长度和“I”值更该,没有具体规定,使用时要注意运算结果的溢出问题。
对错误的算术式有一定的检查功能。
程序代码如下:
#includemath.h
float sss(float d[],char e[],int I)
{int i,n;
for(i=0;i=I;n=++i)
{if(e[i]==0)
{printf("The answer is:--: %f\n",d[i]);i=I;}
else
{if(e[i]-e[i+1]-5)
{switch(e[i])
{case 80: d[i+1]=d[i]+d[i+1];break;
case 81: d[i+1]=d[i]-d[i+1];break;
case 90: d[i+1]=d[i]*d[i+1];break;
case 91: d[i+1]=d[i]/d[i+1];break;
case 100: d[i+1]=pow(d[i],d[i+1]);break;
default :printf("Sorry! Some Error unknow...");break;}
for(n=i;i=I;i++)
{d[i]=d[i+1],e[i]=e[i+1];
if(e[i]==0) i=I;}
if(n==0) i=n-1;
else i=n-2;}}}}
main()
{float d[32];
char e[32];
int i,I=31,n;
printf("\n\n");
for(i=0;i=I;i++)
{scanf("%f%c",d[i],e[i]);
switch(e[i])
{case '+': e[i]=80;break;
case '-': e[i]=81;break;
case '*': e[i]=90;break;
case '/': e[i]=91;break;
case 'h': e[i]=100;break;
case '=': e[i]=0,i=I;break;
default: printf("Oper %d is Error! ---- %c -ChangeTo:one of + - * / h =\n",i+1,e[i]);}}
printf("\n");
sss(d,e,I);}
直接从我的.c文件里复制出来的.
使用时输入格式例如:123*456-789/369+852h2-741= 然后回车.
852h2表示852的2次方.记得以等号结束.不支持括号(正在努力).
在这支持的32次运算(包括等号).
名称栏目:c语言中函数四则运算 c语言中四则运算符号
标题URL:http://hbruida.cn/article/ddihdoh.html