#include<stdio.h>
void addint(int a, int b)//整数加法运算
{
printf("相加之后的结果为%d", a + b);
}
void subint(int a, int b)//整数减法运算
{
printf("相减之后的结果为%d", a - b);
}
void mulint(int a, int b)//整数乘法运算
{
printf("相乘之后的结果为%d", a * b);
}
void divint(int a, int b)//整数除法运算
{
//float c;
//c = a / b;
printf("相除之后的结果为%f", a/b);
}
void addf(int a, int b,int c,int d)//a为第一个分数的分子,b为第一个分数的分母,c为第一个分数的分子,d为第二个分数的分母
{
int e, f, i;//e为运算后的分子,f为运算后的分母
f = b * d;
e = a * d + b * c;
for (i = 2; i < f; i++)
{
if ((e % i == 0) && (f % i == 0))
{
e = e/i;
f = f/i;
}
}
printf("相加后的结果为%d/%d",e, f);
}
void subf(int a, int b, int c, int d)//a为第一个分数的分子,b为第一个分数的分母,c为第一个分数的分子,d为第二个分数的分母
{
int e, f, i;//e为运算后的分子,f为运算后的分母
f = b * d;
e = a * d - b * c;
for (i = 2; i < f; i++)
{
if ((e % i == 0) && (f % i == 0))
{
e /= i;
f /= i;
}
}
printf("相减后的结果为%d/%d", e, f);
}
void divf(int a, int b, int c, int d)//a为第一个分数的分子,b为第一个分数的分母,c为第一个分数的分子,d为第二个分数的分母
{
int e, f, i;//e为运算后的分子,f为运算后的分母
f = b * c;
e = a * d;
for (i = 2; i < f; i++)
{
if ((e % i == 0) && (f % i == 0))
{
e /= i;
f /= i;
}
}
printf("相除后的结果为%d/%d", e, f);
}
void mulf(int a, int b, int c, int d)//a为第一个分数的分子,b为第一个分数的分母,c为第一个分数的分子,d为第二个分数的分母
{
int e, f, i;//e为运算后的分子,f为运算后的分母
f = b * d;
e = a * c;
for (i = 2; i < f; i++)
{
if ((e % i == 0) && (f % i == 0))
{
e /= i;
f /= i;
}
}
printf("相乘后的结果为%d/%d", e, f);
}
void main()
{
int k,a,b,c,d;
printf("整数加法请输入1,整数减法请输入2,整数乘法请输入3,整数除法请输入4,分数加法请输入5,分数减法请输入6,分数乘法请输入7,分数除法请输入8:\n");
scanf("%d", &k);
switch (k)
{
case 1:
printf("请输入相加的两个数:");
scanf("%d %d", &a, &b);
addint(a , b);
break;
case 2:
printf("请输入相减的两个数:");
scanf("%d %d", &a, &b);
subint(a, b);
break;
case 3:
printf("请输入相乘的两个数:");
scanf("%d %d", &a, &b);
mulint(a, b);
break;
case 4:
printf("请输入相除的两个数:");
scanf("%f %f", &a, &b);
divint(a, b);
break;
case 5:
printf("请输入相加的两个分数(分别输入分子和分母):");
scanf("%d %d %d %d", &a, &b,&c,&d);
addf(a, b,c,d);
break;
case 6:
printf("请输入相减的两个分数(分别输入分子和分母):");
scanf("%d %d %d %d", &a, &b, &c, &d);
subf(a, b, c, d);
break;
case 7:
printf("请输入相乘的两个分数(分别输入分子和分母):");
scanf("%d %d %d %d", &a, &b, &c, &d);
mulf(a, b, c, d);
break;
case 8:
printf("请输入相除的两个分数(分别输入分子和分母):");
scanf("%d %d %d %d", &a, &b, &c, &d);
divf(a, b, c, d);
break;
}
}