| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 640 人关注过本帖
标题:while循环和for循环求的应用
只看楼主 加入收藏
showsadd
Rank: 1
来 自:武汉
等 级:新手上路
帖 子:17
专家分:5
注 册:2013-3-18
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:6 
while循环和for循环求的应用
#include<stdio.h>
int main()
{

long sum =1L;
int j=1;
int count=0;
int i;
printf("\n输入一个数字并求和:");
scanf("%d",&count);

for( i=1;i<=count;i++)
{
        sum=1L;
        j=1;
        printf("\n1");

        while(j<i)
        {
                sum+=++j;
                printf("+%d",j);
        }
        printf("=%ld\n",sum);
}
return 0;
}

而我把他的结果看了下,我自己是这么打的:
#include<stdio.h>
int main()

{
long sum;
int i,j;
int count;
printf("输入一个数字并求和:");

scanf("%d",&count);

for(i=1;i<=count;i++)
{
       sum = 1L;
        printf("\n1");

for(j=1;j<i;j++)
        {
        sum+=++j;

        printf("+%d",j);
}
printf("=%ld",sum);
}
return 0;
}
问题:我觉得两个程序差不多啊,区别在于我用for循环取代了他原本的while循环,他在开始定义了j=1,我在for循环中定义的,为什么结果完全不同!希望大家能帮看看!
搜索更多相关主题的帖子: long include return count 
2013-03-25 22:42
韶志
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:斗气大陆
等 级:贵宾
威 望:44
帖 子:2223
专家分:13592
注 册:2013-3-22
收藏
得分:10 
#include<stdio.h>
int main()

{
long sum;
int i,j;
int count;
printf("输入一个数字并求和:");

scanf("%d",&count);

for(i=1;i<=count;i++)
{
       sum = 1L;
        printf("\n1");

for(j=1;j<i;j++ )  //把j++去掉,因为下面已经有++j了,就这么简单
        {
        sum+=++j;

        printf("+%d",j);
}
printf("=%ld",sum);
}
return 0;
}

三十年河东,三十年河西,莫欺少年穷!
2013-03-25 22:58
showsadd
Rank: 1
来 自:武汉
等 级:新手上路
帖 子:17
专家分:5
注 册:2013-3-18
收藏
得分:0 
回复 2楼 韶志
嗯,确实是这样的问题,谢谢了。
主要问题还是我逻辑思维太差了。
概念的理解也不透彻
2013-03-25 23:05
shmilyflf
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:5
帖 子:356
专家分:1008
注 册:2012-12-9
收藏
得分:10 
for(i=1;i<=count;i++)
 {
        sum = 1L;
        printf("\n1");
 
        for(j=1;j<i;)//这里还是把j++去掉吧
        {
            sum+=++j;//如果你把++j去掉,会和你参考的程序的结果不一样
            printf("+%d",j);
         }
        printf("=%ld",sum);
 }
2013-03-25 23:05
showsadd
Rank: 1
来 自:武汉
等 级:新手上路
帖 子:17
专家分:5
注 册:2013-3-18
收藏
得分:0 
回复 4楼 shmilyflf
确实是for语句里面j++问题,直接改成j或者空值就行了。
改下面的就变了,谢谢提醒
2013-03-25 23:10
韶志
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:斗气大陆
等 级:贵宾
威 望:44
帖 子:2223
专家分:13592
注 册:2013-3-22
收藏
得分:0 
回复 3楼 showsadd
这几天发现好多提问都是细节问题,这说明大家不是不会做,就是粗心了,细心点就行~

三十年河东,三十年河西,莫欺少年穷!
2013-03-25 23:13
LLC_HJW
Rank: 2
等 级:论坛游民
帖 子:58
专家分:39
注 册:2013-1-11
收藏
得分:0 
还是2楼厉害
2013-03-26 17:10
快速回复:while循环和for循环求的应用
数据加载中...
 
   



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

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