廣告廣告
  加入我的最愛 設為首頁 風格修改
首頁 首尾
 手機版   訂閱   地圖  簡體 
您是第 9122 個閱讀者
 
發表文章 發表投票 回覆文章
  可列印版   加為IE收藏   收藏主題   上一主題 | 下一主題   
zptdaniel 手機
數位造型
個人文章 個人相簿 個人日記 個人地圖
小人物
級別: 小人物 該用戶目前不上站
推文 x0 鮮花 x28
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片
推文 x0
[C/C++][求助] 用C++結構寫貨幣轉換程式..我卡關了..請高手相救
用C++的結構寫一個貨幣轉換程式,要有一個貨幣物件其中有貨幣型態與此貨幣轉換至台幣的倍率。並且要有一個清單可以讓使用者選擇轉換的方式(我是設定美金跟台幣互轉)

程式要印出使用者的輸入值與輸出值..輸入負數就結束.

PS:附上我所寫的程式碼..一直顯示錯誤:36 expected primary-expression before ')' token
30 expected primary-expression before ')' token

有點急..請高手救命


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

struct money
{
double US;
double NT;
};
double conversion1(money &money) ..

訪客只能看到部份內容,免費 加入會員 或由臉書 Google 可以看到全部內容




獻花 x0 回到頂端 [樓 主] From:臺灣中華電信HINET | Posted:2007-03-28 03:15 |
jenyen63
數位造型
個人文章 個人相簿 個人日記 個人地圖
路人甲
級別: 路人甲 該用戶目前不上站
推文 x0 鮮花 x0
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

看了一下, 你的if else 語句中的else 部分少了括號


獻花 x0 回到頂端 [1 樓] From:沒有資料 | Posted:2007-03-29 16:27 |
jc_taiwan
數位造型
個人文章 個人相簿 個人日記 個人地圖
路人甲
級別: 路人甲 該用戶目前不上站
推文 x0 鮮花 x0
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

我知道卡關的感覺不好受,不過我想你在迷宮已經頭暈了吧...
你用太多money,有些是型態(struct),有些是未宣告的東西(因為未宣告所以不知怎麼稱呼)

你先將struct外加上範圍子的宣告,會比較好釐清你的問題
複製程式
#include<iostream>
#include<iomanip>
using namespace std;

namespace my_struct
{
       struct money
       {
              double US;
              double NT;
       };  
}

double conversion1(my_struct::money &money);
double conversion2(my_struct::money &money);

int main()
{
  int i,j;
  double US=0,NT=0;
 
  cout<<"請選擇轉換方式"<<endl<<endl;
  cout<<"(1)台幣 ---> 美金"<<endl;
  cout<<"(2)美元 ---> 台幣"<<endl;
  cin>>j;
 
    while((US >0 && NT >0) && j >0)
    {
      if(j==1)
        {
            cout<<"請輸入台幣金額: ";
            cin>>NT;
            cout<<"您輸入的台幣金額為: "<<NT;
            conversion1(money);
            cout<<"換算後的美元金額為: "<<US;
        }else{
            cout<<"請輸入美元金額: ";
            cin>>US;
            cout<<"您輸入的美元金額為: "<<US;
            conversion2(money);
            cout<<"換算後的美元金額為: "<<NT;
              }
    }
 
 
system("PAUSE");
return 0;
}
double conversion1(my_struct::money& money)
      {
          int rate = 35,US,NT;
          US = NT * rate;
          return US;
      }
double conversion2(my_struct::money& money)
      {
          int rate = 35,NT,US;
          NT = US / rate;
          return NT;
      }
        

結果編譯出來會出現'money' : undeclared identifier

你需要用my_struct::money這個形態去產生一個實體money
然後將NT及US assign到那個實體,之後將實體傳進你的函式
再用這個實體的NT及US做運算...

然後初步的程式就變成
複製程式
#include<iostream>
#include<iomanip>
using namespace std;

namespace my_struct
{
       struct money
       {
              double US;
              double NT;
       };  
}

double conversion1(my_struct::money &money);
double conversion2(my_struct::money &money);

int main()
{
  int i,j;
  double US=0,NT=0;
 //用my_struct::money這個形態去產生一個實體money
  my_struct::money money;
  cout<<"請選擇轉換方式"<<endl<<endl;
  cout<<"(1)台幣 ---> 美金"<<endl;
  cout<<"(2)美元 ---> 台幣"<<endl;
  cin>>j;
 
    while((US >0 && NT >0) && j >0)
    {
      if(j==1)
        {
                     
            cout<<"請輸入台幣金額: ";
            cin>>NT;
                     //將NT及US assign到那個實體
                     money.NT = NT;
            cout<<"您輸入的台幣金額為: "<<money.NT;
            US = conversion1(money);
            cout<<"換算後的美元金額為: "<<US;
        }else{
            cout<<"請輸入美元金額: ";
            cin>>US;
                    //將NT及US assign到那個實體
                     money.US = US;
            cout<<"您輸入的美元金額為: "<<money.US;
            NT = conversion2(money);
            cout<<"換算後的美元金額為: "<<NT;
              }
    }
 
 
system("PAUSE");
return 0;
}
double conversion1(my_struct::money& money)
      {
          int rate = 35,US,NT;
          US = money.NT * rate;
          return US;
      }
double conversion2(my_struct::money& money)
      {
          int rate = 35,NT,US;
          NT = money.US / rate;
          return NT;
      }
   
當然還沒有結束,你的程式還是有些陷阱
在剛開始的時候,你MAIN()裡頭的US跟NT都宣告為0
所以While一直都進不去...

(時間緊迫時,還是要看清楚money的定義....)


[ 此文章被jc_taiwan在2007-04-02 14:23重新編輯 ]


獻花 x0 回到頂端 [2 樓] From:臺灣臺北市 | Posted:2007-04-02 12:52 |
mt9261
數位造型
個人文章 個人相簿 個人日記 個人地圖
路人甲
級別: 路人甲 該用戶目前不上站
推文 x0 鮮花 x0
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

#include <iostream.h>

typedef double MONEY;

void main()
{
     double      rate;
     MONEY      usd,ntd;

     cout << "Please Tell Me the Rate :" <<"\n";
     cout << "USD : NT = 1 : A"<<"\n";
     cout << "A = ";
     cin >> rate;

     cout << "How Many New Taiwan Dollar You Have : ";
     cin >> ntd;

     usd = (1/rate) * ntd;
     
     cout <<endl;
     cout <<ntd<<" NT = "<<usd<<" USD"<<"\n";
}


獻花 x0 回到頂端 [3 樓] From:未知地址 | Posted:2008-04-23 21:47 |

首頁  發表文章 發表投票 回覆文章
Powered by PHPWind v1.3.6
Copyright © 2003-04 PHPWind
Processed in 0.016643 second(s),query:16 Gzip disabled
本站由 瀛睿律師事務所 擔任常年法律顧問 | 免責聲明 | 本網站已依台灣網站內容分級規定處理 | 連絡我們 | 訪客留言