| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 447 人关注过本帖
标题:y=2a中a为周期函数时(2)
只看楼主 加入收藏
qhxxbc
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:163
专家分:174
注 册:2010-9-14
结帖率:95%
收藏
已结贴  问题点数:20 回复次数:5 
y=2a中a为周期函数时(2)
某方程y=2a,其中a为i的周期函数,每逢100变一次,比如:
i取从1到100时,a取0;
i取从101到200时,a取1;
i取从201到300时,a取0;
i取从301到400时,a取1;
......
i可以从1取到40万

请教如何通过C语言实现?谢谢指点!
搜索更多相关主题的帖子: C语言 
2011-01-26 14:59
huangapple
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
帖 子:545
专家分:1790
注 册:2010-12-30
收藏
得分:12 
#include <stdio.h>

int main()
{
    long i, a = 1;

    for(i = 0; i < 400000; ++i)
    {
        if(i % 100 == 0)
            a ^= 1; //每过100个数,a变一次值
        printf("i= %d  , a = %d\n",i+1,a);
    }

    return 0;
}

这样就行,但是400000太大,不好测试,如果楼主要看效果的话,建议将400000改小点看

[ 本帖最后由 huangapple 于 2011-1-26 16:04 编辑 ]

勤能补拙,熟能生巧!
2011-01-26 15:40
qhxxbc
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:163
专家分:174
注 册:2010-9-14
收藏
得分:0 
果然神奇!能行!
我简化了一下问题,代码如下:
void main()
{
    int i, a = 1;

    for(i = 0; i < 40; ++i)
    {
        if(i % 10 == 0)
            a ^= 1; //每过1002上数,a变一次值
        printf("i= %d  , a = %d\n",i+1,a);
    }
}

核心部分if(i % 10 == 0)
            a ^= 1;
无法理解。
麻烦您具体解释一下?谢谢!

非计算机专业自学新手向大家请教
2011-01-26 15:53
huangapple
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
帖 子:545
专家分:1790
注 册:2010-12-30
收藏
得分:5 
  ^ 这是一种位运算符
1  二进制中表示为 00000001  (假设占一个字节就好,)
0  二进制中表示为 00000000
 1^0   就这样运算  00000001  

就是一位一位对下来,0 0 就还是0  ; 0 1 就是1 ; 1  1 就是 0; 记住就好了
这样 1^1 就是 0   1^0  就是1了
不懂得表达,楼主自己琢磨下。。

[ 本帖最后由 huangapple 于 2011-1-26 16:04 编辑 ]

勤能补拙,熟能生巧!
2011-01-26 16:00
犬虫门心
Rank: 8Rank: 8
来 自:西安
等 级:蝙蝠侠
帖 子:209
专家分:753
注 册:2011-1-25
收藏
得分:3 
a ^= 1; <=> a = a ^ 1; <=> a = a 异或1
异或真值表
a    b    a^b
0    0    0
0    1    1
1    0    1
1    1    0
异或有一个性质:相同的值异或一定为0.

当一名对得起学生学费的老师,一直是我的目标!我会更努力的!
2011-01-26 16:06
qhxxbc
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:163
专家分:174
注 册:2010-9-14
收藏
得分:0 
根据2位的提示,看了一下教材,明白了,非常感谢!

非计算机专业自学新手向大家请教
2011-01-26 16:29
快速回复:y=2a中a为周期函数时(2)
数据加载中...
 
   



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

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