| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 842 人关注过本帖
标题:我这样写为什么会死循环!帮忙讲解下~
只看楼主 加入收藏
sssszhaojun
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2008-4-19
收藏
 问题点数:0 回复次数:8 
我这样写为什么会死循环!帮忙讲解下~
小弟出学C语言:这题循环不会啦!
求1- 1/3 + 1/5 - 1/7 +1/9 -……1/N直到最后一项的绝对指小于10的负4次方!~~
我自己写的
main()
{
int sum=0,i=1,t=1;
while(fabs(t)>=1E-4)
{sum+=t;
i+=2;
t=-(1/i);
}
printf("sun=%d",sum);
}
可写到这就变成全减运算啦!~~而题目是做减再做加然后直到1/n!~

[[it] 本帖最后由 sssszhaojun 于 2008-4-22 21:28 编辑 [/it]]
搜索更多相关主题的帖子: 讲解 
2008-04-22 21:15
中学者
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:20
帖 子:3554
专家分:80
注 册:2007-9-14
收藏
得分:0 
程序代码:
#include<stdio.h>
int main(void)
{
    float sum = 0.0f, x=1;
    int i;
    for(i=1;i<10000;++i)
    {
        x=i&1? 2*i-1 : 1-2*i;
        sum += 1.0/x;
     }
     printf("%.3f",sum); 
     return 0;
}

樱花大战,  有爱.
2008-04-22 21:29
sssszhaojun
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2008-4-19
收藏
得分:0 
回复 2# 的帖子
我还没学FOR语句啊 !~~能用WHILE讲解下吗
2008-04-22 21:32
中学者
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:20
帖 子:3554
专家分:80
注 册:2007-9-14
收藏
得分:0 
只是格式不一样.
程序代码:
#include<stdio.h>
int main(void)
{
    float sum = 0.0f, x=1;
    int i=1;
    while(i<10000)
    {
        x=i&1? 2*i-1 : 1-2*i;
        sum += 1.0/x;
        ++i;
     }
     printf("%.3f",sum); 
     return 0;
}

樱花大战,  有爱.
2008-04-22 21:36
永夜的极光
Rank: 6Rank: 6
等 级:贵宾
威 望:27
帖 子:2721
专家分:1
注 册:2007-10-9
收藏
得分:0 
你可以增加一个变量,初始值为-1,然后每次循环的时候乘以-1,计算每一项的时候,乘以这个变量,就能实现每一项正负交替了
收到的鲜花
  • sssszhaojun2008-04-22 21:56 送鲜花  2朵   附言:受益良多
  • sssszhaojun2008-04-22 21:57 送鲜花  2朵   附言:受益良多
  • sssszhaojun2008-04-22 22:01 送鲜花  2朵   附言:又是你帮我的

从BFS(Breadth First Study)到DFS(Depth First Study)
2008-04-22 21:37
中学者
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:20
帖 子:3554
专家分:80
注 册:2007-9-14
收藏
得分:0 
学习///
收到的鲜花
  • sssszhaojun2008-04-22 21:44 送鲜花  2朵  
  • sssszhaojun2008-04-22 21:44 送鲜花  2朵  
  • sssszhaojun2008-04-22 21:45 送鲜花  2朵  

樱花大战,  有爱.
2008-04-22 21:39
sunkaidong
Rank: 4
来 自:南京师范大学
等 级:贵宾
威 望:12
帖 子:4496
专家分:141
注 册:2006-12-28
收藏
得分:0 
中学的?:用的神话了,呵呵.经常看见..很享受...
收到的鲜花
  • sssszhaojun2008-04-22 21:58 送鲜花  2朵   附言:恶意灌水

学习需要安静。。海盗要重新来过。。
2008-04-22 21:39
中学者
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:20
帖 子:3554
专家分:80
注 册:2007-9-14
收藏
得分:0 
被燕子影响了....

樱花大战,  有爱.
2008-04-22 21:53
sunkaidong
Rank: 4
来 自:南京师范大学
等 级:贵宾
威 望:12
帖 子:4496
专家分:141
注 册:2006-12-28
收藏
得分:0 
lz这是我第一次被说哦...你是希望你看看他们写代码的艺术..你说我灌水
 x=i&1? 2*i-1 : 1-2*i;这句话很精华..弄明白后,就可以弄明白位运算和?:,以及以后学高级编程的时候参量传递的意义.... 伤心
wndclass.style = CS_HREDRAW | CS_VREDRAW ;
        
使用C的位「或」运算子结合了两个「窗口类别样式」标识符。在表头文件WINUSER.H中,已定义了一整组以CS为前缀的标识符:

#define     CS_VREDRAW               0x0001
        
#define     CS_HREDRAW           0x0002
        
#define     CS_KEYCVTWINDOW          0x0004
        
#define     CS_DBLCLKS           0x0008
        
#define     CS_OWNDC             0x0020
        
#define     CS_CLASSDC           0x0040
        
#define     CS_PARENTDC          0x0080
        
#define     CS_NOKEYCVT         0x0100
        
#define     CS_NOCLOSE           0x0200
        
#define     CS_SAVEBITS          0x0800
        
#define     CS_BYTEALIGNCLIENT       0x1000
        
#define     CS_BYTEALIGNWINDOW       0x2000
        
#define     CS_GLOBALCLASS        0x4000
        
#define     CS_IME                0x00010000
        
由于每个标识符都可以在一个复合值中设置一个位的值,所以按这种方式定义的标识符通常称为「位旗标」。通常我们只使用少数的窗口类别样式。HELLOWIN中用到的这两个标识符表示,所有依据此类别建立的窗口,每当窗口的水平方向大小(CS_HREDRAW)或者垂直方向大小(CS_VREDRAW)改变之后,窗口要完全重画。
弄点看看..其实基础很重要....

[[it] 本帖最后由 sunkaidong 于 2008-4-22 22:22 编辑 [/it]]
收到的鲜花
  • sssszhaojun2008-04-23 12:22 送鲜花  2朵   附言:辛苦

学习需要安静。。海盗要重新来过。。
2008-04-22 22:05
快速回复:我这样写为什么会死循环!帮忙讲解下~
数据加载中...
 
   



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

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