| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1227 人关注过本帖
标题:蓝桥杯题解3
只看楼主 加入收藏
loveClangage
Rank: 8Rank: 8
来 自:广东云浮
等 级:蝙蝠侠
帖 子:326
专家分:891
注 册:2013-8-23
收藏
得分:0 
楼主今年是要参加比赛的吗?

编写的程序,不能改变世界,却可以改变自己...
2014-01-13 16:35
zhu_zhi
Rank: 2
来 自:广西百色
等 级:论坛游民
帖 子:129
专家分:92
注 册:2013-4-25
收藏
得分:0 
回复 7楼 书生等待
我的算法是:把范围0~1023的十进制数转换成由0或1的数字组成的十位二进制数,如:0101010101,为字符型,(char)为类型转换(t%2+48)表达式把数字0或1转换为字符'0'或'1';不知这样讲解你理解否?
2014-01-13 16:40
zhu_zhi
Rank: 2
来 自:广西百色
等 级:论坛游民
帖 子:129
专家分:92
注 册:2013-4-25
收藏
得分:0 
回复 11楼 loveClangage
我都快50了,参加也意义不大,且我C还没学完呢!
兴趣驱然。
2014-01-13 16:45
beyondyf
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:103
帖 子:3282
专家分:12654
注 册:2008-1-21
收藏
得分:10 
快50了,可敬。那我也参与一下

程序代码:
#include <stdio.h>
void cal(int a, int i)
{
    static char s[11];
    if(i > 10)
    {
        if(a == 100) puts(s);
        return;
    }
    s[i - 1] = '0'; cal(a - i, i + 1);
    s[i - 1] = '1'; cal(a * 2, i + 1);
}
int main()
{
    cal(10, 1);
    return 0;
}

重剑无锋,大巧不工
2014-01-14 08:14
zhu_zhi
Rank: 2
来 自:广西百色
等 级:论坛游民
帖 子:129
专家分:92
注 册:2013-4-25
收藏
得分:0 
回复 14楼 beyondyf
楼主的代码太简洁了,算是开了眼界了。修炼几年了?
2014-01-14 09:10
书生等待
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:8
帖 子:280
专家分:689
注 册:2013-2-22
收藏
得分:0 
回复 12楼 zhu_zhi
哦,是跟ASCII码有关吗?字符‘0’的ASCII码值是48,‘1’是49,是这样吗?
楼主快50了,着实可敬!
2014-01-14 10:35
书生等待
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:8
帖 子:280
专家分:689
注 册:2013-2-22
收藏
得分:0 
回复 13楼 zhu_zhi
(3) char型与int型
● int型数值赋给char型变量时,只保留其最低8位,高位部分舍弃。
● char型数值赋给int型变量时, 一些编译程序不管其值大小都作正数处理,而另一些编译程序在转换时,若char型数据值大于127,就作为负数处理。对于使用者来讲,如果原来char型数据取正值,转换后仍为正值;如果原来char型值可正可负,则转换后也仍然保持原值, 只是数据的内部表示形式有所不同。

网上这么解释强制类型转换,其实这是说不加(char),直接用=是吧
2014-01-14 10:37
快速回复:蓝桥杯题解3
数据加载中...
 
   



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

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