一、案例要求
用户可输入不同的序号,用于选择实现不同的运算,输入1 实现加法运算,输入2实现减法运算,输入3 实现乘法运算,输入4 实现除法运算,输入0退出四则运算,输入其他序号,提示输入有误,请重新输入。
二、案例分析
可以分别写四个功能函数对应加减乘除功能,通过switch语句判断序号,来调用对应的功能函数,例如:case 1:add();break;即是调用加法函数做加法。
三、案例代码
#include<stdio.h>
void add(); //申明加法函数
void sub(); //申明减法函数
void mul(); //申明乘法函数
void div(); //申明除法函数
int main()
{
int num;
printf("******四则运算计算器*****\n");
while(1)
{
printf("请输入序号选择运算方式:\n");
printf("1 加法 2 减法 3 乘法 4 除法 0 退出\n");
scanf("%d",&num);
switch(num)
{
case 1: add();break; //若输入序号1,则调用加法功能函数
case 2: sub();break; //若输入序号2,则调用减法功能函数
case 3: mul();break; //若输入序号3,则调用乘法功能函数
case 4: div();break; //若输入序号4,则调用除法功能函数
case 0:printf("请按任意键退出!\n");break; //若输入序号0,则提示按任意键退出
default: printf("输入有误,请重新输入!\n");break;
}
if(num==0) //按序号0退出的是循环,所以此判断要写在switch的外面,while的里面
{
break;
}
}
return 0;
}
void add() //加法子函数
{
int a,b,sum=0;
printf("请输入两个加数a和b:\n");
scanf("%d %d",&a,&b);
sum=a+b;
printf("%d+%d=%d\n",a,b,sum);
}
void sub() //减法子函数
{
int a,b,cha=0;
printf("请输入减数与被减数a和b:\n");
scanf("%d %d",&a,&b);
cha=a-b;
printf("%d-%d=%d\n",a,b,cha);
}
void mul() //乘法子函数
{
int a,b,ji=1;
printf("请输入乘数与被乘数a和b:\n");
scanf("%d %d",&a,&b);
ji=a*b;
printf("%d*%d=%d\n",a,b,ji);
}
void div() //除法子函数
{
int a,b,shang=0;
printf("请输入除数与被除数a和b:\n");
scanf("%d %d",&a,&b);
shang=a/b;
printf("%d/%d=%d\n",a,b,shang);
}