C++ 如何计算商

C++ 如何计算商,c++,casting,division,C++,Casting,Division,我正在制作一个简单的计算器,当有人输入两个整数时,它会列出所有内容。一切似乎都很好,除了商,我就是找不到它 #define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<stdlib.h> #define SUM a + b #define AVG (SUM) /(float) 2 #define SUBTRACTION a - b #define MULTIPLICATION a * b #define QU

我正在制作一个简单的计算器,当有人输入两个整数时,它会列出所有内容。一切似乎都很好,除了商,我就是找不到它

#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>


#define SUM a + b
#define AVG (SUM) /(float) 2
#define SUBTRACTION a - b
#define MULTIPLICATION a * b 
#define QUOTIENT 
#define MODULUS a % b


void main()
{
    int a, b;
    printf("Enter two integers: ");
    scanf("%d%d", &a, &b);
    printf("\n\nThe Sum is %d\n", SUM);
    printf("The Difference is %d\n", SUBTRACTION);
    printf("The Multiplication is %d\n", MULTIPLICATION);
    printf("The Quotient is %d\n", QUOTIENT);
    printf("The Average is %0.2f\n", AVG);
    printf("The Modulus is %d\n", MODULUS);

    system("PAUSE");
}
\define\u CRT\u SECURE\u NO\u警告
#包括
#包括
#定义和a+b
#定义平均值(总和)/(浮动)2
#定义减法a-b
#定义乘法a*b
#定义商
#定义模数a%b
void main()
{
INTA,b;
printf(“输入两个整数:”);
scanf(“%d%d”、&a和&b);
printf(“\n\n总和是%d\n”,总和);
printf(“差值为%d\n”,减法);
printf(“乘法是%d\n”,乘法);
printf(“商是%d\n”,商);
printf(“平均值为%0.2f\n”,平均值);
printf(“模数为%d\n”,模数);
系统(“暂停”);
}
这一行

#define QUOTIENT 
应该是

#define QUOTIENT a / b

但是应该勾选“除以零”

您没有定义商的值。你什么都不能投。仔细阅读您的代码。使用宏通常会降低代码的可读性。在您的例子中,它模糊了printf语句正在做什么,或者要求读者“去别处看看”正在发生什么。此外,您的宏硬连接到变量名
a
b
。如果必须重命名变量,则必须重新定义所有宏。什么强制转换?是什么让你认为这是问题所在?它应该像
AVG
那样转换为
float