| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1517 人关注过本帖
标题:C語言新手 一問
只看楼主 加入收藏
ngokyau
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2012-9-14
收藏
得分:0 
這當又怎樣理解?
int sum(int a1, int b2)
{
       int i=1, temp=100, total=0;
        
        if(a1<b2){
                temp=b2;
                b2=a1;
                a1=temp;
               
        }
        
        for(i=a1;i<=b2;i++)
                total += i;
               
        return total;
}

我邏輯要怎樣理解??

努力學習C
2013-09-12 01:02
浮云之冰雪
Rank: 2
等 级:论坛游民
帖 子:74
专家分:89
注 册:2013-5-11
收藏
得分:2 
保留意见!

潇洒不可少!
2013-09-12 12:29
ngokyau
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2012-9-14
收藏
得分:0 
回复 12楼 浮云之冰雪


不要保留....小弟錯的請指出耶

努力學習C
2013-09-12 16:37
米兰的大铁匠
Rank: 2
来 自:天外
等 级:论坛游民
帖 子:61
专家分:84
注 册:2013-7-16
收藏
得分:2 
if(a1<b2){
                temp=b2;
                b2=a1;
                a1=temp;
               
        }
这个在那里没用,
可以以写成swap()函数;
2013-09-12 21:40
风飞舞
Rank: 1
等 级:新手上路
帖 子:1
专家分:2
注 册:2013-9-12
收藏
得分:2 
回复 10楼 ngokyau
如果不把if(){}删除,会出错的吧
2013-09-12 23:52
ngokyau
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2012-9-14
收藏
得分:0 
# include <stdio.h>
# include <stdlib.h>


int sum(int a1, int b2)
{
        int i, temp, total=0;
        
        if(a1<b2){
                temp=b2;
                b2=a1;
                a1=temp;
               
        }
        
        for(i=a1;i<=b2;i++)
                total += i;
               
        return total;
}


這個是自詝函數...下面是引入函數~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

int main(void)
{
        printf("the sum from 1 to 100 is %d\n",sum(1,100));
        
        system("PAUSE");
        
        return 0;
}

努力學習C
2013-09-13 00:13
a646404908
Rank: 6Rank: 6
等 级:侠之大者
威 望:5
帖 子:189
专家分:492
注 册:2012-2-14
收藏
得分:2 
回复 16楼 ngokyau
int sum(int a1, int b2)
{
        int i, temp, total=0;
        
        if(a1<b2){//a1=1 b2=100
                temp=b2;
                b2=a1;
                a1=temp;
               
        }
        //经过交换 a1=100 b2=1 那下面的 for是木有执行的 ,把if(a1<b2)改成 if(a1>b2)就OK的
        for(i=a1;i<=b2;i++)
                total += i;
               
        return total;
}
2013-09-14 17:11
may大象
Rank: 2
等 级:论坛游民
帖 子:55
专家分:38
注 册:2013-5-30
收藏
得分:2 
回复 10楼 ngokyau
应该是:
當i=1時,1<5,sum=sum+i=0+1=1;

當i=2時,2<5,sum=sum+i=1+2=3;

當i=3時,3<5,sum=sum+i=3+3=6;

當i=4時,4<5,sum=sum+i=6+4=10;

                             凡成大事者,各有各的方法论。
2013-09-15 13:05
天使在Jv
Rank: 2
等 级:论坛游民
帖 子:8
专家分:10
注 册:2013-3-31
收藏
得分:2 
你之前的程序也可以的,只是你的if语句有问题!
应该改为if(a1>b2)就可以了,按照你下面的累加程序部分,你是想把小数赋值给a1的。
2013-09-15 14:48
rock超仔
Rank: 2
等 级:论坛游民
帖 子:5
专家分:12
注 册:2013-9-15
收藏
得分:2 
system("PAUSE");
这句没学过啊。是什么意思呀?求解释额
2013-09-15 15:01
快速回复:C語言新手 一問
数据加载中...
 
   



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

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