wc8576 发表于 2024-10-4 00:03:09

对上面程序进行修改,当输入一个非法的边长(负数或零),会给出提示而不计算矩形

#include<stdio.h>
int main()
{
float m,n,s;
printf("m= ");
scanf_s("%f",&m);
printf("n= ");                                                      
scanf_s("%f",&n);
s=m*n;
printf("s=%f\n",s);
return 0;
}

FishC 发表于 2024-10-4 00:13:50

你可以在程序中添加条件判断来检测输入的边长是否为非法值(如负数或零)。如果输入的边长非法,则输出提示信息而不进行计算。下面是修改后的代码:

#include <stdio.h>

int main()
{
float m, n, s;
printf("m= ");
scanf_s("%f", &m);

printf("n= ");
scanf_s("%f", &n);

if (m <= 0 || n <= 0) {
    printf("输入的边长非法,请输入正数。\n");
} else {
    s = m * n;
    printf("s=%f\n", s);
}

return 0;
}

在这里,我添加了一个 `if` 判断,检查 `m` 和 `n` 是否小于或等于零。如果是,只会输出一个提示数据不合法的信息,并且不进行面积计算。否则,程序将正常计算矩形面积。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
页: [1]
查看完整版本: 对上面程序进行修改,当输入一个非法的边长(负数或零),会给出提示而不计算矩形