我的答案如下
#include<stdio.h>
int main(){
int A,B;
scanf("%d %d",&A,&B);
if(A>=-100&&A<=100&&B>=-100&&B<=100){
if(B>0){
float consult=A/B;
printf("%d/%d=%.2f\n",A,B,consult);
}else if(B<0){
float consult=A/(B);
printf("%d/(%d)=%.2f\n",A,B,consult);
}else{
printf("%d/%d=Error\n",A,B);
}
}
}
我的代码出现问题,本题希望可以得到大家的指导,谢谢你的帮助!
重新修改,供参考:
#include <stdio.h>
int main()
{
int A, B;
float C = 0;
scanf("%d %d", &A, &B);
if (A >= -100 && A <= 100 && B >= -100 && B <= 100) {
if (B > 0)
printf("%d/%d=%.2f", A, B, C = (float)A / B);
else if (B == 0)
printf("%d/%d=Error", A, B);
else
printf("%d/(%d)=%.2f", A, B, C = (float)A / B);
}
return 0;
}
【以下回答由 GPT 生成】
你的代码基本上是正确的,但是在输入B等于0时,你并没有给出输出结果。此外,你也没有处理输入不符合要求的情况。
以下是修改后的代码:
#include<stdio.h>
int main(){
int A,B;
scanf("%d %d",&A,&B);
if(A>=-100 && A<=100 && B>=-100 && B<=100){
if(B>0){
float consult=A/B;
printf("%d/%d=%.2f\n",A,B,consult);
}else if(B<0){
float consult=(float)A/B; // 将A强制转换为float类型
printf("%d/(%d)=%.2f\n",A,B,consult);
}else{
printf("%d/%d=Error\n",A,B);
}
} else {
printf("输入不符合要求\n"); // 处理输入不符合要求的情况
}
}
这样修改后,当输入B等于0时,会输出"输入不符合要求",其他情况都会正常计算并输出结果。
希望对你有帮助!
【相关推荐】