标题:关于return语句
取消只看楼主
xiangjiantui
Rank: 1
等 级:新手上路
帖 子:35
专家分:0
注 册:2005-11-13
 问题点数:0 回复次数:1 
关于return语句
我在VC++和C-FREE都试验了可是让我不能理解的是一个小小的retun把我难住,大家来看下2个代码一个是有return一个是没有:
#include<iostream>
#include<cmath>
using namespace std;
float sanjiaoxing(float a,float b,float c);
void main()
{cout<<"请输入一个三角形的各边长a,b,c"<<endl;
int x,y,z;
cin>>x>>y>>z;
sanjiaoxing(x,y,z);
}
float sanjiaoxing(float a,float b,float c)
{ float area;
float s;
if(a+b<=c||a+c<=b||b+c<=a)
{cout<<"您输入的三个数不能组成三角形"<<endl;
//本应该有的位置
}
else
{
s=(a+b+c)/2;
area=sqrt(s*(s-a)*(s-b)*(s-c));
cout<<"三角形"<<a<<" "<<b<<" "<<c<<" "<<"的面积是:"<<area<<endl;
/本应该有的位置
}
}
这个程序执行没有毛病
再来看看书上的原代码:
#include<iostream>
#include<cmath>
using namespace std;
float sanjiaoxing(float a,float b,float c);
void main()
{cout<<"请输入一个三角形的各边长a,b,c"<<endl;
int x,y,z;
cin>>x>>y>>z;
sanjiaoxing(x,y,z);
}
float sanjiaoxing(float a,float b,float c)
{ float area;
float s;
if(a+b<=c||a+c<=b||b+c<=a)
{cout<<"您输入的三个数不能组成三角形"<<endl;
return;
}
else
{
s=(a+b+c)/2;
area=sqrt(s*(s-a)*(s-b)*(s-c));
cout<<"三角形"<<a<<" "<<b<<" "<<c<<" "<<"的面积是:"<<area<<endl;
return;
}
}
这个程序运行后有2个毛病
可是书上的是为了说明retun没有返回值的语句啊!!!!!!
谁能帮我解这个问题!谢谢
搜索更多相关主题的帖子: 语句 return 
2005-11-16 22:48
xiangjiantui
Rank: 1
等 级:新手上路
帖 子:35
专家分:0
注 册:2005-11-13
得分:0 
你写的红字能不能说明?
谢谢版主

2005-11-17 18:07



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-33805-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.112590 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved