Facebook Sharer
选择您要替换的背景颜色:
【农历新年】背景图片:
个性化设定
 注册  找回密码
查看: 2706|回复: 12
打印 上一主题 下一主题

【求助】 C++ if and else statement 和 loop (已解决~多谢 tomato)

[复制链接]

14

主题

0

好友

156

积分

高级会员

Rank: 3Rank: 3Rank: 3

跳转到指定楼层
1#
发表于 2010-6-16 10:40 PM |只看该作者 |倒序浏览
本帖最后由 bboycs 于 2010-6-17 07:23 PM 编辑

不好意思~想向各位前辈请教~
小弟目前还在学习~

情况是这样~
1.输入两个号码,选出最大的`
2.要 输入 3个 号码~选出最大的

1. #include <iostream>
using namespace std;

int main()
{
        int A;
        int B;
       
        cin >> A ;
        cin >> B;
       
        if(A > B);
        {
                cout << A;
        }
        else
        {
                cout << B;
        }
       
       
        return 0;
}       
       
expected primary expression before  else
(我翻了很多网站~但还是看不懂)想请各位高手解释一下~谢谢

第二个是要3和号码~
是要用loop

#include <iostream>
#include <cmath>
using namespace std;

int main()
{
        int count;
        int A;
        int B;
        count = 1;
       
        cin >> A ;
        cin >> B;
        do
        {
                        if(B > A);
                        {
                        A = B;
                        count = count + 1;
                        }
                        else
                        {
                        count = count + 1;
                        }       
                       
        }
        while (count < 3);
        return 0;
                       
       
}

一样也是 if  else statement的问题~
还有就是看了怪怪~第三个号码的input应该怎么放呀??
请多多帮忙~~万分感谢~

在线等~




收藏收藏0

7

主题

1

好友

5108

积分

一流名嘴

Rank: 12Rank: 12Rank: 12

2#
发表于 2010-6-17 12:01 AM |只看该作者
不好意思~想向各位前辈请教~
小弟目前还在学习~

情况是这样~
1.输入两个号码,选出最大的`
2.要 输 ...
bboycs 发表于 2010-6-16 10:40 PM



1. #include <iostream>
using namespace std;

int main()
{
        int A;
        int B;
        
        cin >> A ;
        cin >> B;
        
        if(A > B); //<---- 多了不必要的分號
        {
                cout << A;
        }
        else
        {
                cout << B;
        }
        
        
        return 0;
}      



2. 如果是固定只要三個就不用使用 do...while 了, 直接

if(A < B)
{
    //這裡讓 A 賦予 B 值
}


//再來這裡再讓使用者輸入 B

之後再做一次 if...else 即可


回复

使用道具 举报

14

主题

0

好友

156

积分

高级会员

Rank: 3Rank: 3Rank: 3

3#
发表于 2010-6-17 12:08 AM |只看该作者
本帖最后由 bboycs 于 2010-6-17 12:09 AM 编辑

回复 2# Super-Tomato


    这是我刚刚打出来的~
#include <iostream>
#include <cmath>

using namespace std;

int main()
{
        int a;
        int b;
        int i = 1;
       
        cin >> a;
       
        if(i< 3)
        {
        do
       
               
                {
                        cin >> b;
                        if(b> a)
                        {
                                 int a = b ;
                                 i = i + 1;
                                 
                                 
                        }
                        else
                        {
                                int a = a;
                                i = i + 1;
                               
                        }
                       

                }

               
        while (i< 3);
        }
        else
        cout << a << endl;
       
       
       

}

我是想用while的~
因为还有一题是6个号码
弄到可以input 3个号码了~
但是result show 不出来~


回复

使用道具 举报

7

主题

1

好友

5108

积分

一流名嘴

Rank: 12Rank: 12Rank: 12

4#
发表于 2010-6-17 12:27 AM |只看该作者
回复  Super-Tomato


    这是我刚刚打出来的~
#include
#include

using namespace std;

i ...
bboycs 发表于 2010-6-17 12:08 AM




#include <iostream>
#include <cmath> //<--- 沒用到 math 函數不需要引用

using namespace std;

int main()
{
        int a;
        int b;
        int i = 1;
        
        cin >> a;
        
        if(i< 3)  // <--- do while 的時候已經限制了條件  i  這裡就不需要多於的
        {
        do
        
               
                {
                        cin >> b;
                        if(b> a)
                        {
                                 int a = b ;
                                 i = i + 1;  // i 遞增直接寫在 do 最後即可, 不用所有 if else 內都重複寫
                                 
                                 
                        }
                        else //這裡的 else 是多於的, a 為何還要賦予 a 值
                        {
                                int a = a;
                                i = i + 1;
                                
                        }
                        

                }

               
        while (i< 3);
        }
        else
        cout << a << endl;
        
        //最後這裡才需要寫個 if...else 判斷輸出最終結果
        

}


回复

使用道具 举报

14

主题

0

好友

156

积分

高级会员

Rank: 3Rank: 3Rank: 3

5#
发表于 2010-6-17 12:31 AM |只看该作者
回复 4# Super-Tomato


    试着~多谢指教~


回复

使用道具 举报

14

主题

0

好友

156

积分

高级会员

Rank: 3Rank: 3Rank: 3

6#
发表于 2010-6-17 12:35 AM |只看该作者
#include
#include   //> a;
        
        if(i< 3)  // > b;
                        i ...
Super-Tomato 发表于 2010-6-17 12:27 AM



    不好意思~最后那个if else的我不是很明白诶~


回复

使用道具 举报

7

主题

1

好友

5108

积分

一流名嘴

Rank: 12Rank: 12Rank: 12

7#
发表于 2010-6-17 12:39 AM |只看该作者
不好意思~最后那个if else的我不是很明白诶~
bboycs 发表于 2010-6-17 12:35 AM



最後的 if else 就是判斷要輸出是 a 還是 b 變數值大


回复

使用道具 举报

14

主题

0

好友

156

积分

高级会员

Rank: 3Rank: 3Rank: 3

8#
发表于 2010-6-17 12:42 AM |只看该作者
回复 7# Super-Tomato


                    do
       
               
                {
                        cin >> b;
                        if(b> a)
                        {
                                 int a = b ;
                                 
                                 
                        }
                }
               
                        i = i + 1;
               
        while (i< 3);

有error~
不是放在最后吗?


回复

使用道具 举报

7

主题

1

好友

5108

积分

一流名嘴

Rank: 12Rank: 12Rank: 12

9#
发表于 2010-6-17 12:47 AM |只看该作者
回复  Super-Tomato
                    do
        
               
                {
                        cin >> b;
                        if(b> a)
                        {
                                 int a = b ;
                                 
                                 
                        }
                }
               
                        i = i + 1;
               
        while (i< 3);

有error~
不是放在最后吗?
bboycs 发表于 2010-6-17 12:42 AM


=_= 你了解 { 和 } 的含意嗎??
翻翻你課本的 do...while 例子, 看看要處理的循環事件應該放在哪??


回复

使用道具 举报

14

主题

0

好友

156

积分

高级会员

Rank: 3Rank: 3Rank: 3

10#
发表于 2010-6-17 01:35 AM |只看该作者
回复 9# Super-Tomato


嗯嗯~真的很不好意思~麻烦你了~
最后一个问题了~

这是成功的code

#include <iostream>
#include <cmath> //<--- 沒用到 math 函數不需要引用

using namespace std;

int main()
{
        int a;
        int b;
        int i = 1;
        
        cin >> a;
        
        
        {
        do
        
               
                {
                        cin >> b;
                        if(b> a)
                        {
                                 a = b ;
                                 i = i + 1;  
                                 
                                 
                        }
                        else
                        {
                                a = a;
                                i = i + 1;
                                
                        }
                        

                }

               
        while (i< 3);
        }
                if(a>b)
       {
                cout << a << endl;
                }
                else
                {
                cout << b << endl;
                }
               
                return 0;
          
          
          
}

不过不好意思~我真还是不明白你所说的
i = i + 1 放在do 最后~


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

JBTALKS.CC |联系我们 |隐私政策 |Share

GMT+8, 2024-7-9 05:38 AM , Processed in 0.097249 second(s), 26 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

Ultra High-performance Dedicated Server powered by iCore Technology Sdn. Bhd.
Domain Registration | Web Hosting | Email Hosting | Forum Hosting | ECShop Hosting | Dedicated Server | Colocation Services
本论坛言论纯属发表者个人意见,与本论坛立场无关
Copyright © 2003-2012 JBTALKS.CC All Rights Reserved
合作联盟网站:
JBTALKS 马来西亚中文论坛 | JBTALKS我的空间 | ICORE TECHNOLOGY SDN. BHD.
回顶部