依此,你在(1)中将两个printf颠倒一下有可能还是能输出正确的值的。
简单实现整数的加减乘除,不知道是不是你想要的:#include <conio.h>
#include<stdio.h>
#include<math.h>
#include<stdlib.h>
int plus(int a,int b)
{
return a+b
}
int subduction(int a,int b)
{
return a-b
}
int multiplication (int a,int b)
{
return a*b
}
float division(int a, int b)
{
if(b!=0)
return 1.0*a/b
}
void GetNum(int &a,int &b)
{
printf("请输入数据,a,b(整数)\n")
int n1,n2
scanf("%d %d",&n1,&n2)
a = n1
b = n2
}
void ShowMenu()
{
printf("**************************************\n")
printf("选择操作选项,即输入对应的数字: \n\n")
printf(" 菜单选项: \n")
printf(" 1、加法 :\n")
printf(" 2、减法 :\n")
printf(" 3、乘法 :\n")
printf(" 4、除法 :\n")
printf(" 0、退出 :\n")
printf("*************************************\n")
}
void main()
{
bool flag = false
while(1)
{
ShowMenu()
int option
scanf("%d",&option)
system("cls")
int a,b
if(option == 0)
break
GetNum(a,b)
switch(option)
{
case 1:
printf("%d + %d = %d\n",a,b,plus(a,b))
break
case 2:
printf("%d - %d = %d\n",a,b,subduction(a,b))
break
case 3:
printf("%d * %d = %d\n",a,b,multiplication(a,b))
break
case 4:
if(b!=0)
printf("%d / %d = %f\n",a,b,division(a,b))
else
printf("除数 %d == 0,不合法\n",b)
break
case 0:
break
}
}
}