c语言程序设计,求解答

已知长方体的高度,输入长度和宽度,求体积,B写法可以编译但是不能执行,有什么不对的地方吗?A写法为什么要intmain?为什么还要return0?intcalculate... 已知长方体的高度,输入长度和宽度,求体积,B写法可以编译但是不能执行,有什么不对的地方吗?A写法为什么要int main?为什么还要return0?int calculate为什么先声明然手在主函数下面执行?这个函数为什么要ruturn result?主函数返回值返回给了谁?int calculate函数返回给了谁?不返回会有什么区别?
#include<stdio.h>
#define Height 10
int calculate(int Long,int Width);
int main()
{
int m_Long;
int m_Width;
int result;

printf("长方形的高度为:%d\n",Height);
printf("请输入长度\n");scanf("%d",&m_Long);
printf("请输入宽度\n");scanf("%d",&m_Width);
result=calculate(m_Long,m_Width);
printf("长方体的体积是:");
printf("%d\n",result);
return 0;
}

int calculate(int Long,int Width)
{
int result=Long*Width*Height;
return result;
}
展开
 我来答
jinkehouse
2013-02-06 · TA获得超过312个赞
知道小有建树答主
回答量:187
采纳率:0%
帮助的人:150万
展开全部
首先你这个程序是正确的,你所说的B写法A写法什么的,我表示没找到啊.
int main()在最后加return 0,是基本常识,因为int需要返还值,可以用void main(),那么就不要返还值了.
还有calculate是子函数,main函数要调用的话,必须在main函数之前或者内声明.至于下面那个calculate函数不是执行而是定义,那是用户自定义的函数,用来实现某种功能.
同样的calculate函数前有int需要返还值,如果不返还那么result就得不到值,因为result=calculate(m_Long,m_Width);result接受它的值.不返回的话,在calculate函数里计算出来的值就传不到main函数里,result也就没值了.
(这是基本的函数的模块化,楼主可以自己查看一下教科书,比较简单的)
追问
B写法在这 
#include
main()
{
int long,width,height,result;
height=10;
printf("长方体的高度为10");
pirntf("请输入长方体的长度");
scanf("%d",&long);
pirntf("请输入长方体的宽度");
scanf("%d",&width);
result=long*width*height;
printf("长方体的体积是:%d",result);
}
追答
你这个没有调用子函数,修改如下.要强调的是,你的输出拼错了,还有long在c语言里是关键字,表示长整型,不能用来做变量,把l大写就好了
#include
void main()
{
int Long, width,height,result;
height=10;
printf("长方体的高度为10\n");
printf("请输入长方体的长度");
scanf("%d",&Long);
printf("请输入长方体的宽度");
scanf("%d",&width);
result=Long*width*height;
printf("长方体的体积是:%d\n",result);
}
alec_z87
2013-03-11 · 超过24用户采纳过TA的回答
知道答主
回答量:170
采纳率:0%
帮助的人:70.6万
展开全部
A写法为什么要int main? 主函数返回值类型为int

int calculate为什么先声明然手在主函数下面执行? 也可在主函数上面执行

这个函数为什么要ruturn result? 结果返回主函数

主函数返回值返回给了谁? 无返回值 因为return 0;

int calculate函数返回给了谁?主函数

不返回会有什么区别? 输出不了函数结果
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
鹤为胜0
2013-02-07
知道答主
回答量:10
采纳率:0%
帮助的人:3.9万
展开全部
你那个B写法中 main() 在C语言中 与void main()是不同,它与 int main()是相同的 也就是说你如果定义一个函数时前面不加返回值类型的话 C语言默认为 int类型 故 在主函数的最后 还要加上 return 0; 还有 int main() 这种形式这是为了程序的可移植性而考虑的 因为 不是所有的编译器都能编译通过 void main()
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式