输入程序:
#include<stdio.h>
#include<stdlib.h>
int main()
{
int a, b, c, volume,r;
printf("请输入立方体3边长度的整数");
r=scanf_s("%d%d%d",&a,&b,&c);
if (r == 3)
{
volume = a * b * c;
printf("体积是:%d\n", volume);
}
else printf("输入错误!\n");
system("pause");
return 0;
}
分别输入整数、小数、负数,最终结果如下:
可以看出输入负数时依然能得出体积,这样程序是错误的,所以需要将边长限制为正整数。
#include<stdio.h>
#include<stdlib.h>
int main()
{
int a, b, c, volume,r;
printf("请输入立方体3边长度的整数");
r=scanf_s("%d%d%d",&a,&b,&c);
if (r == 3 && a > 0 && b > 0 && c > 0 )/*&&是逻辑与*/
{
volume = a * b * c;
printf("体积是:%d\n", volume);
}
else printf("输入错误!\n");
system("pause");
return 0;
}
结果如下:
期间我遇到一次错误,程序无法生成,查看解决方案后几次尝试才理解是因为我上一个调试页面没有关闭,程序还被占用,关闭输入数值的页面,错误就消失了,可以正常执行。