Re: [問題] 編碼錯誤

看板C_and_CPP作者 (銀澄)時間15年前 (2010/10/25 22:45), 編輯推噓1(107)
留言8則, 3人參與, 最新討論串2/3 (看更多)
※ 引述《feather0911 (浪漫)》之銘言: : 我們有一題題目是這樣的 : 設計一個程式,輸入十個數字,要設計一個防呆的機制,讓數入的字數一定要十個, : 並將其第四個與第九個字元輸出。 : 例如:輸入1234567890,則輸出4和9;輸入9876543210,則輸出6和1。 : 這是小弟打的 : #include <iostream.h> : #include <conio.h> : #include <math.h> : void main() : { : char n1,n2,n3,n4,n5,n6,n7,n8,n9,n10; : cout<<"請輸入十個數字,將顯示第四個及第九個數字\n"; : cin>>n1>>n2>>n3>>n4>>n5>>n6>>n7>>n8>>n9>>n10 ; : if('int'==10) : { : cout<<"第四個數字是"<<n4<<endl<<"第九個數字是"<<n9<<endl; : } : else if ('int'<10) : { : cout<<"您輸入錯誤"<<endl; : } : getch(); : } : 這樣打可以執行程式 : 可是一但輸入完十個數字 : 程式就會執行完畢不會跑出我要的東西 : 後來我把int的''去掉 : 就error了= = : error是這樣 : ignored on left of 'int' when no variable is declared : 有請板上神人幫我解答...感恩<(_ _)> 我是用g++寫的 #include<iostream> #include<vector> using namespace std; int main(){ vector<char> VecChNum; char ChNum; cout<<"請輸入十個數字"<<endl; while(cin>>ChNum){ VecChNum.push_back(ChNum); if(VecChNum.size()==10)//加這個判斷應該OK才對 break; } if(VecChNum.size()==10){ cout<<"輸入的第四個數字為"<<VecChNum[3]; cout<<"第九個數為"<<VecChNum[8]<<endl; }else{ cout<<"輸入有誤"<<endl; } return 0; } 我是沒有考慮到使用者輸入數字以外的東西 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 120.124.104.173

10/25 22:46, , 1F
輸入不到十個數字 那個 cin 會停著 不會往下到 if
10/25 22:46, 1F

10/25 22:51, , 2F
我是用putty連到linux 再用g++編譯 執行結果成功的
10/25 22:51, 2F

10/25 22:54, , 3F
你有試過只打三四個數字就按 enter 嗎?
10/25 22:54, 3F

10/25 22:55, , 4F
不對 你這個根本就是無窮迴圈嘛...XD
10/25 22:55, 4F

10/25 22:58, , 5F
因為可以按CTRL+D跳開@@..
10/25 22:58, 5F

10/25 22:59, , 6F
是啊,不過一般的user應該不會想到 只會覺得是無窮 XD
10/25 22:59, 6F

10/25 23:00, , 7F
用DEV C++編譯的確是無窮迴圈沒錯..XD
10/25 23:00, 7F
※ 編輯: ru035pu4xx 來自: 120.124.104.173 (10/25 23:07)

10/25 23:09, , 8F
放在條件裡就好啦 XD
10/25 23:09, 8F
※ 編輯: ru035pu4xx 來自: 120.124.104.173 (10/25 23:11)
文章代碼(AID): #1CnPWF45 (C_and_CPP)
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 3 篇):
文章代碼(AID): #1CnPWF45 (C_and_CPP)