|
发表于 2022-3-21 11:14:12
|
显示全部楼层
本楼为最佳答案
本帖最后由 C丁洞杀O 于 2022-3-21 13:15 编辑
这个主要的原因是因为,他仍然输出了result ,而 result == 0 所以他会输出0.00 ,想要修改这个问题,那么就要吧最后一句加入else里面,最好是吧
这样可以最大程度的减少向123这种k可以为0的情况。
下面是可以用的,你试试吧,是不是这种。
- #include <stdio.h>
- int main(){
- int i;
- double j,k,result;
-
- scanf("%d %lf %lf",&i,&j,&k);
-
- if(k == 0){
- printf("%d zero error",(int)j);
- return 0;
- }else{
- switch (i) {
- case 1:
- result = j + k;
- break;
- case 2:
- result = j - k;
- break;
- case 3:
- result = j * k;
- break;
- case 4:
- result = j / k;
- break;
- default:
- printf("%d error",i);
- break;
- }
- }
-
- printf("%.2f",result);
-
- return 0;
-
- }
复制代码
希望对你有帮助, |
|