XiaoHui.net 笑汇程序员论坛首页
工作并快乐着,职业并休闲着
寻梦的岁月从不言辛苦几许,
不问收获几多……
» 游客:  申请新用户 | 登录 | 会员 | 统计 | 帮助 » XiaoHui.Net 笑汇程序员论坛 | 纯文字版 | 全站索引 | XiaoHui.com


[算法讨论] 短小精悍的,进来帮忙啊!!!!

RSS 订阅当前论坛  

上一主题 下一主题
     

标题: [算法讨论] 短小精悍的,进来帮忙啊!!!!  
 
junhu33
小水手
Rank: 1



UID 29894
精华 0
积分 8
帖子 8
阅读权限 10
注册 2007-4-5
状态 离线
短小精悍的,进来帮忙啊!!!!

Sample Text
以下程序运行时,若从键盘输入-32768,则程序输出是????


abs(int x)
{
        if(x<=0) return x;
        else return -x;

}
main()
{
        int y,z,(*p)()=abs;
        scanf("%d",&y);
        z=(*p)(y);
        printf("%d\n",z);
}
2007-4-5 17:22#1
查看资料  Blog  发短消息  顶部
 
风中泪
小水手
Rank: 1


UID 29673
精华 0
积分 2
帖子 2
阅读权限 10
注册 2007-2-9
状态 离线
应该是输出-32768~!
2007-4-9 14:57#2
查看资料  Blog  发短消息  QQ  顶部
 
junhu33
小水手
Rank: 1



UID 29894
精华 0
积分 8
帖子 8
阅读权限 10
注册 2007-4-5
状态 离线
abs(int x)
{
        if(x<=0) return x;
        else return -x;

}
中IF的条件是   :(x<=0)
好象x>=0时输出-32768的啊
这种函数能介绍一下吗?
2007-4-11 20:26#3
查看资料  Blog  发短消息  顶部
 
tianwai
小水手
Rank: 1



UID 29897
精华 0
积分 3
帖子 3
阅读权限 10
注册 2007-4-6
来自 henan
状态 离线
这是一个把输入变为负数的程序!!!
2007-4-16 21:51#4
查看资料  Blog  发短消息  顶部
 
gongchangzhang
小水手
Rank: 1



UID 30486
精华 0
积分 8
帖子 8
阅读权限 10
注册 2007-8-15
状态 离线
楼主的程序的意思是:如果x小于等于零,原数返回;若x大于零,则返回x的相反数。
还有 abs前应加上返回值类型 int。
2007-8-16 14:49#5
查看资料  Blog  发短消息  顶部
 
warrior
版主
Rank: 7Rank: 7Rank: 7



UID 2453
精华 0
积分 33
帖子 33
阅读权限 100
注册 2006-3-20
来自 北京
状态 离线
请养成良好的编程习惯

1. 函数名为abs,意思是取绝对值。可该代码却正好相反。
2. 函数的声明要完整,不要管编译器是否会做缺省设置。
2007-8-16 17:22#6
查看资料  Blog  发短消息  QQ  顶部
 
kzzk
传说中的水手
Rank: 5Rank: 5



UID 10883
精华 0
积分 174
帖子 174
阅读权限 1
注册 2003-6-30
状态 离线
int y,z,(*p)()=abs;//不明白

123456
2007-8-20 09:47#7
查看资料  访问主页  Blog  发短消息  顶部
 
warrior
版主
Rank: 7Rank: 7Rank: 7



UID 2453
精华 0
积分 33
帖子 33
阅读权限 100
注册 2006-3-20
来自 北京
状态 离线
声明函数指针

2007-8-20 18:53#8
查看资料  Blog  发短消息  QQ  顶部
     


  可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题  


 


所有时间为 GMT+8, 现在时间是 2008-12-2 04:45 Powered by Discuz! 4.1.0 清除 Cookies - XiaoHui.Net 笑汇程序员论坛 - Archiver