C语言,编写一个程序计算矩形的面积和周长 初学者,想问问我编的这个哪有错误?如何改?

初学者,想问问我编的这个哪有错误?如何改?#include<stdio.h>main(){floatlength,width,area,perimeter;printf(... 初学者,想问问我编的这个哪有错误?如何改?
#include<stdio.h>
main()
{
float length,width,area,perimeter;
printf("Enter length and width:\n");
scanf("%f,%f",&length,&width);
area=length*width;
perimeter=(length+width)*2;
printf("area=%.2f perimeter=%.2f\n",area,perimeter);
return 0;
}为什么计算结果总是不对,还是负数。
展开
 我来答
skyeg
2012-10-30 · TA获得超过743个赞
知道小有建树答主
回答量:416
采纳率:0%
帮助的人:314万
展开全部
这段程序代码是没有错误的,估计问题出在输入格式上。程序使用如下语句输入:
scanf("%f,%f",&length,&width);

注意两个%f之间的逗号。如果输入时没有严格按照此格式在两个数值之间加上这个逗号,输入值就会错误,width的值通常会是一个随机值,而这个随机值大多是负值,而且绝对值很大。这样一来,输出结果肯定全都变为负值了。
如果不修改这些,就在输入时注意加上英文逗号试试;
或者把输入格式中的那个逗号去掉,改成:scanf("%f%f",&length,&width);
注意两个%f是紧挨着的,中间没有任何符号。这样在输入时可以使用回车、空格等空白符分隔。
--
2022-12-05 广告
图形化编程简单理解为用积木块形式编程,scratch和python也是其中的一种,属于入门级编程,以其简单生动的画面获得无数学生的喜爱,深圳市创客火科技有限公司是一家做教育无人机的公司,旗下有编程无人机,积木无人机及室内外编队,每款飞机含有... 点击进入详情页
本回答由--提供
Q2609213554
2012-10-30
知道答主
回答量:24
采纳率:0%
帮助的人:8.7万
展开全部
你输入长和宽的时候没把逗号输入吧?记住要用逗号隔开,不然width就是没赋值,而是一个很大的负数,所以你得到的是负数啊
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zouzirun
2012-10-29 · TA获得超过160个赞
知道小有建树答主
回答量:472
采纳率:0%
帮助的人:199万
展开全部
周长为负数?
还是面积?
追问
我在VC++6.0上运行了一下,都负的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式