注册 登录
编程论坛 新人交流区

这题是什么意思啊.求助

jam0227 发布于 2007-11-06 19:48, 514 次点击
#include<iostream.h>
int abs(int a)
{
return (a>0)?a:-a;
}
double abs(double a)
{
return (a>0)?a:-a;
}
int main()
{
cout<<abs(-2)<<endl;
cout<<abs(3.4)<<endl;
cout<<abs('a')<<endl;
cout<<abs(2.1f)<<endl;
return 0;
}
这个程序是写的什么啊。大哥大姐们,要不最细,就要更细.讲讲它是干什么的.
13 回复
#2
wdyllff2007-11-06 19:54

(a>0)?a:-a 如果a>0 则 返回 a 如果不>0 则 返回 -a

#3
iFreeBSD2007-11-06 20:29
求绝对值,数学没学好??
#4
jiruanl0622007-11-06 20:50
汗一个

没学到那么后面

看不懂 (a>0)?a:-a 什么意思

不过看了2楼的解释就明白了

学到了 呵呵

int abs() 定义int函数abs
double abs() 定义double函数abs
abs(-2) 调用abs函数
#5
l5251690702007-11-06 21:09
不知道 学的 时c# 
#6
yshtc2007-11-06 21:52

两个函数名一样的????
运行到:cout<<abs(-2)<<endl;
cout<<abs(3.4)<<endl;
cout<<abs('a')<<endl;
cout<<abs(2.1f)<<endl;
C++能知道调用的是那个函数嘛???是double abs(double)还是int abs(int)??

#7
tommi2007-11-06 21:53

1.它是用C++写的(废话)
2.这个是重载的例子.
重载是两个函数名一样, 但参数或返回值类型不一样.
调用abs()函数时,
如果参数是整型或字符型(c中这两个类型可以看作是同个类型), 调用的是int abs(int a)
如果参数是浮点型, 调用的是double abs(double)
3.条件运算符的使用, 2楼讲过了

#8
yshtc2007-11-06 21:59
但是整型不也是包括在浮点型之内吗??大一新生...望多指教..呵呵

[此贴子已经被作者于2007-11-6 22:17:08编辑过]


#9
nameless8082007-11-06 22:03
回复:(jam0227)这题是什么意思啊.求助
这不是VB啊
#10
yshtc2007-11-06 22:04
还有就是 cout<<abs(2.1f)<<endl;
2.1f是什么意思...
#11
源堂法雷尔2007-11-06 22:12
2.1f的意思应该是指2.1是float吧……
呵呵,我只会C。C++还是刚自学了一点……
专家给个答案吧
#12
wucan2007-11-06 22:18
c++
#13
lovehaihong2007-11-06 22:23
1.它是用C++写的(废话)
2.这个是重载的例子.
重载是两个函数名一样, 但参数或返回值类型不一样.
调用abs()函数时,
如果参数是整型或字符型(c中这两个类型可以看作是同个类型), 调用的是int abs(int a)
如果参数是浮点型, 调用的是double abs(double)
3.条件运算符的使用, 7楼讲过了
#14
jam02272007-11-09 16:25
嘿嘿..谢谢各位帮忙.刚学C++学的不怎么样.望以后多指导
1