RSS   



  可打印版本 | 推薦給朋友 | 訂閱主題 | 收藏主題 | 純文字版  


 
 82  2/6  <  1  2  3  4  5  6  > 


 
主題: [C&C++] [問題]vc++的問題 已放上那3題MFC跟其他資料   字型大小:||| 
h80053
銀驢友〔中級〕
等級: 13等級: 13等級: 13等級: 13


十週年紀念徽章(五級)  

 . 積分: 720
 . 精華: 1
 . 文章: 2053
 . 收花: 5801 支
 . 送花: 8430 支
 . 比例: 1.45
 . 在線: 2473 小時
 . 瀏覽: 17320 頁
 . 註冊: 7414
 . 失蹤: 312
 . 台中
#16 : 2006-3-23 05:34 PM     只看本作者 引言回覆

for ( int multiple = 1; multiple != 0; cout << mul )
我看不懂@@



[如果你喜歡本文章,就按本文章之鮮花~送花給作者吧,你的支持就是別人的動力來源]
本文連接  
檢閱個人資料  發私人訊息  Blog  快速回覆 新增/修改 爬文標記
Johnny Brove
銀驢友〔高級〕
等級: 14等級: 14等級: 14等級: 14
論壇第一正直

 . 積分: 882
 . 精華: 5
 . 文章: 2162
 . 收花: 4874 支
 . 送花: 7205 支
 . 比例: 1.48
 . 在線: 864 小時
 . 瀏覽: 27266 頁
 . 註冊: 8211
 . 失蹤: 4625
 . Lycian League
#17 : 2006-3-23 06:03 PM     只看本作者 引言回覆

在multiple不等於零的情況下

會一直重複進行for迴圈

並且每跑一次會執行一次cout << mul



[如果你喜歡本文章,就按本文章之鮮花~送花給作者吧,你的支持就是別人的動力來源]
本文連接  
檢閱個人資料  發私人訊息  Blog  快速回覆 新增/修改 爬文標記
h80053
銀驢友〔中級〕
等級: 13等級: 13等級: 13等級: 13


十週年紀念徽章(五級)  

 . 積分: 720
 . 精華: 1
 . 文章: 2053
 . 收花: 5801 支
 . 送花: 8430 支
 . 比例: 1.45
 . 在線: 2473 小時
 . 瀏覽: 17320 頁
 . 註冊: 7414
 . 失蹤: 312
 . 台中
#18 : 2006-3-23 07:27 PM     只看本作者 引言回覆

原來FOR也能這樣用 現在才知道=.=



1.試設計一程式可以輸入十個同學的姓名座號成績 輸入完後可以依 A座號 B分數高低 二種格式輸出

    以下是我寫的但是問題好像很多  希望大大能指導一下看缺少了什麼或是問題
#include<iostream.h>
void main()
{  
int d,e,f;
int a[10],b[10];
    char c[10];

    cout<<"請輸入座號"<<f<<endl;
    cin >>a[d]>>endl;
   
cout<<"請輸入姓名"<<endl;
     cin >>c[e]>>endl;
   
cout<<"請輸入分數"<<endl;
     cin >>b[f]>>endl;
    for(d=0;d<=10;d++)
    cout<<a[d]<<"\n"<<c[e]<<"\n"<<b[f]<<endl;


   謝謝



[如果你喜歡本文章,就按本文章之鮮花~送花給作者吧,你的支持就是別人的動力來源]
本文連接  
檢閱個人資料  發私人訊息  Blog  快速回覆 新增/修改 爬文標記
Johnny Brove
銀驢友〔高級〕
等級: 14等級: 14等級: 14等級: 14
論壇第一正直

 . 積分: 882
 . 精華: 5
 . 文章: 2162
 . 收花: 4874 支
 . 送花: 7205 支
 . 比例: 1.48
 . 在線: 864 小時
 . 瀏覽: 27266 頁
 . 註冊: 8211
 . 失蹤: 4625
 . Lycian League
#19 : 2006-3-23 08:20 PM     只看本作者 引言回覆

首先在declaration方面,分數和座號可以只需要一個Number&Score[2][10]的array

然後在姓名方面最好不要用char(因為只能讀入一個字元)

可以使用字串型態

#include <string>
using std::string;
using std::getline;

string Name[10];

getline( cin, Name[n] )

配合for迴圈跑十次(n從0到9)



[如果你喜歡本文章,就按本文章之鮮花~送花給作者吧,你的支持就是別人的動力來源]
本文連接  
檢閱個人資料  發私人訊息  Blog  快速回覆 新增/修改 爬文標記
h80053
銀驢友〔中級〕
等級: 13等級: 13等級: 13等級: 13


十週年紀念徽章(五級)  

 . 積分: 720
 . 精華: 1
 . 文章: 2053
 . 收花: 5801 支
 . 送花: 8430 支
 . 比例: 1.45
 . 在線: 2473 小時
 . 瀏覽: 17320 頁
 . 註冊: 7414
 . 失蹤: 312
 . 台中
#20 : 2006-3-24 04:18 PM     只看本作者 引言回覆

所以說int d,e,f;
可以不用定義嘛??
字串我們還沒教到      CHAR那行有問題嘛??

FOR 是指讓姓名座號分數都跑十次嘛??
都寫for(d=0;d<=10;d++) 這樣

先謝過



[如果你喜歡本文章,就按本文章之鮮花~送花給作者吧,你的支持就是別人的動力來源]
本文連接  
檢閱個人資料  發私人訊息  Blog  快速回覆 新增/修改 爬文標記
Johnny Brove
銀驢友〔高級〕
等級: 14等級: 14等級: 14等級: 14
論壇第一正直

 . 積分: 882
 . 精華: 5
 . 文章: 2162
 . 收花: 4874 支
 . 送花: 7205 支
 . 比例: 1.48
 . 在線: 864 小時
 . 瀏覽: 27266 頁
 . 註冊: 8211
 . 失蹤: 4625
 . Lycian League
#21 : 2006-3-24 08:06 PM     只看本作者 引言回覆

char當然不好啦

它一次只能存入一個字元啊(例如"G"或"5"等)

至於for寫一個就好啦:

for ( int StudentNum = 0; StudentNum < 10; StudentNum++ )
{
         cin >> Name[ StudentNum ];
         cin >> Number&Score[ 0 ][ StudentNum ];
         cin >> Number&Score[ 1 ][ StudentNum ];
}



[如果你喜歡本文章,就按本文章之鮮花~送花給作者吧,你的支持就是別人的動力來源]
本文連接  
檢閱個人資料  發私人訊息  Blog  快速回覆 新增/修改 爬文標記
h80053
銀驢友〔中級〕
等級: 13等級: 13等級: 13等級: 13


十週年紀念徽章(五級)  

 . 積分: 720
 . 精華: 1
 . 文章: 2053
 . 收花: 5801 支
 . 送花: 8430 支
 . 比例: 1.45
 . 在線: 2473 小時
 . 瀏覽: 17320 頁
 . 註冊: 7414
 . 失蹤: 312
 . 台中
#22 : 2006-3-26 04:24 PM     只看本作者 引言回覆

#include<iostream.h>
void main()
{  
    int d,e,f;
    int a[10][2];
    char c[10];
    for(a=0;a<=10;a++)
          cout<<"請輸入座號"<<endl;
       cin>>a[0]>>endl;
   
       cout<<"請輸入姓名"<<endl;
        cin>>c>>endl;
   
       cout<<"請輸入分數"<<endl;
       cin>>[1]>>endl;
   
       cout<<a[0]<<"\n"<<c<<"\n"<<a[1]<<endl;
       


}



修改後,還是有錯誤以下是C++所顯示的錯誤

C:\Documents and Settings\TOKKO\My Documents\111\111.cpp(7) : error C2440: '=' : cannot convert from 'const int' to 'int [10][2]'
        There are no conversions to array types, although there are conversions to references or pointers to arrays
C:\Documents and Settings\TOKKO\My Documents\111\111.cpp(7) : error C2446: '<=' : no conversion from 'const int' to 'int (*)[2]'
        Conversion from integral type to pointer type requires reinterpret_cast, C-style cast or function-style cast
C:\Documents and Settings\TOKKO\My Documents\111\111.cpp(7) : error C2040: '<=' : 'int [10][2]' differs in levels of indirection from 'const int'
C:\Documents and Settings\TOKKO\My Documents\111\111.cpp(7) : error C2105: '++' needs l-value
C:\Documents and Settings\TOKKO\My Documents\111\111.cpp(9) : error C2679: binary '>>' : no operator defined which takes a right-hand operand of type 'int [2]' (or there is no acceptable conversion)
C:\Documents and Settings\TOKKO\My Documents\111\111.cpp(15) : error C2059: syntax error : '['
Error executing cl.exe.



[ ] 這個東西好像不能被C++接受??

謝謝



[如果你喜歡本文章,就按本文章之鮮花~送花給作者吧,你的支持就是別人的動力來源]
本文連接  
檢閱個人資料  發私人訊息  Blog  快速回覆 新增/修改 爬文標記
Johnny Brove
銀驢友〔高級〕
等級: 14等級: 14等級: 14等級: 14
論壇第一正直

 . 積分: 882
 . 精華: 5
 . 文章: 2162
 . 收花: 4874 支
 . 送花: 7205 支
 . 比例: 1.48
 . 在線: 864 小時
 . 瀏覽: 27266 頁
 . 註冊: 8211
 . 失蹤: 4625
 . Lycian League
#23 : 2006-3-26 04:40 PM     只看本作者 引言回覆

首先,for指令必須用{}把敘述包起來

你這樣只會重複執行cout<<"請輸入座號"<<endl;

還有int a[10]的話,裡面數字是從0~9,不能跑到10

接著,a[][]是個二元array,不能cin>>a[N]這樣用

最後,你要讓它跑loop,需要把variable弄到[]裡面



[如果你喜歡本文章,就按本文章之鮮花~送花給作者吧,你的支持就是別人的動力來源]
本文連接  
檢閱個人資料  發私人訊息  Blog  快速回覆 新增/修改 爬文標記
h80053
銀驢友〔中級〕
等級: 13等級: 13等級: 13等級: 13


十週年紀念徽章(五級)  

 . 積分: 720
 . 精華: 1
 . 文章: 2053
 . 收花: 5801 支
 . 送花: 8430 支
 . 比例: 1.45
 . 在線: 2473 小時
 . 瀏覽: 17320 頁
 . 註冊: 7414
 . 失蹤: 312
 . 台中
#24 : 2006-3-26 07:30 PM     只看本作者 引言回覆

修改一下有好一點但是只有跑出       請輸入座號輸入10次後  才跑出請輸入姓名      謝謝

#include<iostream.h>
#include<conio.h>
void main()

{  
        int d,e,f;
        int a[10],b[10];
        char c[10];

               
          
          cout<<"請輸入座號"<<endl;
          for(d=0;d<=9;d++)   //設定a[10]時位址為0到9
                          cin>>a[d];   

          cout<<"請輸入姓名"<<endl;
          for(e=0;e<=9;e++)
                          cin>>c[e];

        cout<<"請輸入分數"<<endl;
         for(f=0;f<=9;f++)
                         cin>>b[f];   
            

        cout<<a[d]<<"\n"<<c[e]<<"\n"<<b[f]<<endl;  
          

   

       
   
   

}

[h80053 在 2006-3-26 07:44 PM 作了最後編輯]



[如果你喜歡本文章,就按本文章之鮮花~送花給作者吧,你的支持就是別人的動力來源]
本文連接  
檢閱個人資料  發私人訊息  Blog  快速回覆 新增/修改 爬文標記
Johnny Brove
銀驢友〔高級〕
等級: 14等級: 14等級: 14等級: 14
論壇第一正直

 . 積分: 882
 . 精華: 5
 . 文章: 2162
 . 收花: 4874 支
 . 送花: 7205 支
 . 比例: 1.48
 . 在線: 864 小時
 . 瀏覽: 27266 頁
 . 註冊: 8211
 . 失蹤: 4625
 . Lycian League
#25 : 2006-3-26 11:13 PM     只看本作者 引言回覆

把array中的variable都設定成一樣

全部只需要用一個for就好啦= =|||

然後設定其scope包含住你想要重複的地方



[如果你喜歡本文章,就按本文章之鮮花~送花給作者吧,你的支持就是別人的動力來源]
本文連接  
檢閱個人資料  發私人訊息  Blog  快速回覆 新增/修改 爬文標記
h80053
銀驢友〔中級〕
等級: 13等級: 13等級: 13等級: 13


十週年紀念徽章(五級)  

 . 積分: 720
 . 精華: 1
 . 文章: 2053
 . 收花: 5801 支
 . 送花: 8430 支
 . 比例: 1.45
 . 在線: 2473 小時
 . 瀏覽: 17320 頁
 . 註冊: 7414
 . 失蹤: 312
 . 台中
#26 : 2006-3-27 08:49 AM     只看本作者 引言回覆

#include<iostream.h>
#include<conio.h>
void main()

{  
        int d;
        int a[10],b[10];
        char c[10];

                for(d=0;d<=9;d++)    //設定a[10]時位址為0到9

                {
                          
              cout<<"請輸入座號"<<endl;
                        
                           cin>>a[d];   
                       
               cout<<"請輸入姓名"<<endl;
                       
                           cin>>c[d];  

               cout<<"請輸入分數"<<endl;
                 
                           cin>>b[d];     }
            

                  cout<<a[d]<<"\n"<<c[d]<<"\n"<<b[d]<<endl;  
                       
                       
                                                                 
   
       
   
   

}

改過的結果,請問一下如果要 A座號 B分數高低 二種格式輸出??
現在已經可以正常輸入了              謝謝



[如果你喜歡本文章,就按本文章之鮮花~送花給作者吧,你的支持就是別人的動力來源]
本文連接  
檢閱個人資料  發私人訊息  Blog  快速回覆 新增/修改 爬文標記
Johnny Brove
銀驢友〔高級〕
等級: 14等級: 14等級: 14等級: 14
論壇第一正直

 . 積分: 882
 . 精華: 5
 . 文章: 2162
 . 收花: 4874 支
 . 送花: 7205 支
 . 比例: 1.48
 . 在線: 864 小時
 . 瀏覽: 27266 頁
 . 註冊: 8211
 . 失蹤: 4625
 . Lycian League
#27 : 2006-3-27 04:04 PM     只看本作者 引言回覆

使用bubble sort:

紅字的部分是表示當a[counter+1] < a[counter]

則兩個value會swap

for ( int counter = 0, limit = 9; counter < 9; counter++, limit-- )
        {               
                for ( int counter = 0; counter < limit; counter++ )
                {
                        if ( a[counter+1] < a[counter] )
                        {
                                int temp = a[counter+1];
                                a[counter+1] = a[counter];
                                a[counter] = temp;
                        }
       
                }
        }



[如果你喜歡本文章,就按本文章之鮮花~送花給作者吧,你的支持就是別人的動力來源]
本文連接  
檢閱個人資料  發私人訊息  Blog  快速回覆 新增/修改 爬文標記
h80053
銀驢友〔中級〕
等級: 13等級: 13等級: 13等級: 13


十週年紀念徽章(五級)  

 . 積分: 720
 . 精華: 1
 . 文章: 2053
 . 收花: 5801 支
 . 送花: 8430 支
 . 比例: 1.45
 . 在線: 2473 小時
 . 瀏覽: 17320 頁
 . 註冊: 7414
 . 失蹤: 312
 . 台中
#28 : 2006-3-28 06:32 PM     只看本作者 引言回覆

如果這樣寫  照號碼排
#include<iostream.h>
#include<conio.h>
void main()

{  
        int d,e;
        int a[10],b[10];
        char c[10];

                for(d=0;d<=9;d++)    //設定a[10]時位址為0到9

                {
                           
              cout<<"請輸入座號"<<endl;
                        
                           cin>>a[d];   
                        
               cout<<"請輸入姓名"<<endl;
                       
                           cin>>c[d];  

               cout<<"請輸入分數"<<endl;
                 
                           cin>>b[d];     }
            

                  cout<<a[d]<<"\n"<<c[d]<<"\n"<<b[d]<<endl;

                   for(e=0;e<9;e++)
                   if(a[e]<a[d])
                   cout<<a[e]<<[d]<<endl;
              

}

[h80053 在 2006-3-28 06:38 PM 作了最後編輯]



[如果你喜歡本文章,就按本文章之鮮花~送花給作者吧,你的支持就是別人的動力來源]
本文連接  
檢閱個人資料  發私人訊息  Blog  快速回覆 新增/修改 爬文標記
Johnny Brove
銀驢友〔高級〕
等級: 14等級: 14等級: 14等級: 14
論壇第一正直

 . 積分: 882
 . 精華: 5
 . 文章: 2162
 . 收花: 4874 支
 . 送花: 7205 支
 . 比例: 1.48
 . 在線: 864 小時
 . 瀏覽: 27266 頁
 . 註冊: 8211
 . 失蹤: 4625
 . Lycian League
#29 : 2006-3-28 06:47 PM     只看本作者 引言回覆

這樣不行啊

如果a[e]>=a[d]不就沒東西跑出來了?

還是先從排序下手吧

另外在用bubble sort時,記得要把a[],b[],c[]都一起swap

我寫的那個只有swap一個array而已



[如果你喜歡本文章,就按本文章之鮮花~送花給作者吧,你的支持就是別人的動力來源]
本文連接  
檢閱個人資料  發私人訊息  Blog  快速回覆 新增/修改 爬文標記
h80053
銀驢友〔中級〕
等級: 13等級: 13等級: 13等級: 13


十週年紀念徽章(五級)  

 . 積分: 720
 . 精華: 1
 . 文章: 2053
 . 收花: 5801 支
 . 送花: 8430 支
 . 比例: 1.45
 . 在線: 2473 小時
 . 瀏覽: 17320 頁
 . 註冊: 7414
 . 失蹤: 312
 . 台中
#30 : 2006-3-28 07:06 PM     只看本作者 引言回覆

如果要照號碼排列的話,我已經在一開始設了for(d=0;d<=9;d++) 讓{}裡面東西跑10次.
要照號碼的話是要在內洄圈外面再多加上一個FOR的敘述嗎


                                  int d,e;
                                  int a[10],b[10];
                                  char c[10];

                                            for(d=0;d<=9;d++)  
         這裡 在多加一個=>        for(                       )


                     謝謝



[如果你喜歡本文章,就按本文章之鮮花~送花給作者吧,你的支持就是別人的動力來源]
本文連接  
檢閱個人資料  發私人訊息  Blog  快速回覆 新增/修改 爬文標記

 82  2/6  <  1  2  3  4  5  6  > 
   

快速回覆
表情符號

更多 Smilies

字型大小 : |||      [完成後可按 Ctrl+Enter 發佈]        

溫馨提示:本區開放遊客瀏覽。
選項:
關閉 URL 識別    關閉 表情符號    關閉 Discuz! 代碼    使用個人簽名    接收新回覆信件通知
發表時自動複製內容   [立即複製] (IE only)


 



所在時區為 GMT+8, 現在時間是 2024-11-21 09:02 PM
清除 Cookies - 連絡我們 - TWed2k © 2001-2046 - 純文字版 - 說明
Discuz! 0.1 | Processed in 0.022686 second(s), 6 queries , Qzip disabled