史萊姆論壇

返回   史萊姆論壇 > 專業主討論區 > 程式語言討論區
忘記密碼?
論壇說明

歡迎您來到『史萊姆論壇』 ^___^

您目前正以訪客的身份瀏覽本論壇,訪客所擁有的權限將受到限制,您可以瀏覽本論壇大部份的版區與文章,但您將無法參與任何討論或是使用私人訊息與其他會員交流。若您希望擁有完整的使用權限,請註冊成為我們的一份子,註冊的程序十分簡單、快速,而且最重要的是--註冊是完全免費的!

請點擊這裡:『註冊成為我們的一份子!』

Google 提供的廣告


發文 回覆
 
主題工具 顯示模式
舊 2007-10-05, 09:14 PM   #1
leowang 帥哥
長老會員
 
leowang 的頭像
榮譽勳章
UID - 2461
在線等級: 級別:111 | 在線時長:12773小時 | 升級還需:219小時級別:111 | 在線時長:12773小時 | 升級還需:219小時級別:111 | 在線時長:12773小時 | 升級還需:219小時級別:111 | 在線時長:12773小時 | 升級還需:219小時級別:111 | 在線時長:12773小時 | 升級還需:219小時級別:111 | 在線時長:12773小時 | 升級還需:219小時
註冊日期: 2002-12-06
文章: 4729
精華: 0
現金: 101679 金幣
資產: 668410953 金幣
預設 討論 - C++的疑問

PHP 語法:
#include<iostream>
#include<cstdlib>

using namespace std;
int main(void)
{
    
char a[10],b[10];
    
cout <<"Input a:";
    
cin.getline(a,10);
    
cout <<"Input b::";
    
cin.getline(b,10);
    
cout <<a<<":"<<b<<endl;
    
system("pause");
    return 
0;

這程式如何修改 不能更改陣列大小情況下 在輸入時超過陣列所能容入的字串
要把多餘字串的給移除掉 只列印出陣列能容納的字串
並且能夠正常輸入b字串

此帖於 2007-10-05 10:44 PM 被 leowang 編輯.
__________________
https://lh3.googleusercontent.com/RuWvUdY-gxGU8oiOD6DIEoKZhLD-Hn-ITKj1LgD3QY6MehzkoddZNew3f3AFLA8dbxbnK-uiFipPzO3GpT5iL4VTIKCiYhgfnQiP5DROmn_5YIpA9zrseGljottMSbiTsw=w1280

金錢的數量,決定馬子的漂亮
硬碟的容量,決定男人的力量

製作Mail Logo按這裡
leowang 目前離線  
送花文章: 257, 收花文章: 1161 篇, 收花: 4928 次
回覆時引用此帖
舊 2007-10-05, 11:14 PM   #2 (permalink)
協調管理員
 
飛鳥 的頭像
榮譽勳章
UID - 23073
在線等級: 級別:72 | 在線時長:5513小時 | 升級還需:108小時級別:72 | 在線時長:5513小時 | 升級還需:108小時
註冊日期: 2003-01-07
VIP期限: 無限期
住址: 史萊姆團隊
文章: 7199
精華: 11
現金: 837 金幣
資產: 260029 金幣
預設

引用:
作者: leowang 查看文章
PHP 語法:
#include<iostream>
#include<cstdlib>

using namespace std;
int main(void)
{
    
char a[10],b[10];
    
cout <<"Input a:";
    
cin.getline(a,10);
    
cout <<"Input b::";
    
cin.getline(b,10);
    
cout <<a<<":"<<b<<endl;
    
system("pause");
    return 
0;

這程式如何修改 不能更改陣列大小情況下 在輸入時超過陣列所能容入的字串
要把多餘字串的給移除掉 只列印出陣列能容納的字串
並且能夠正常輸入b字串
多餘字串有分左邊的跟右邊的
__________________
http://flybird017.googlepages.com/quok.gif http://flybird020.googlepages.com/new321.gif
寶貝你我的地球
, 請 少開電器,減少溫室氣體排放外,多種植植物,減少列印, 多用背面,丟棄時做垃圾分類。

http://netgames123.googlepages.com/tobikeways.jpg

飛鳥 目前離線  
送花文章: 11706, 收花文章: 3363 篇, 收花: 16453 次
回覆時引用此帖
舊 2007-10-06, 10:26 AM   #3 (permalink)
長老會員
 
leowang 的頭像
榮譽勳章
UID - 2461
在線等級: 級別:111 | 在線時長:12773小時 | 升級還需:219小時級別:111 | 在線時長:12773小時 | 升級還需:219小時級別:111 | 在線時長:12773小時 | 升級還需:219小時級別:111 | 在線時長:12773小時 | 升級還需:219小時級別:111 | 在線時長:12773小時 | 升級還需:219小時級別:111 | 在線時長:12773小時 | 升級還需:219小時
註冊日期: 2002-12-06
文章: 4729
精華: 0
現金: 101679 金幣
資產: 668410953 金幣
預設

也就是說例如輸入到a陣列裡的值leowang10000002
那列印出來的是leowang10 後面的0000002就不列印出來
還要能夠接著輸入"b:"

因為這程式的陣列只能有10個元素 如果超過所能所能容納的元素就會發生錯誤
leowang 目前離線  
送花文章: 257, 收花文章: 1161 篇, 收花: 4928 次
回覆時引用此帖
舊 2007-10-06, 12:47 PM   #4 (permalink)
註冊會員
 
joebin 的頭像
榮譽勳章

勳章總數
UID - 270712
在線等級: 級別:2 | 在線時長:16小時 | 升級還需:5小時級別:2 | 在線時長:16小時 | 升級還需:5小時
註冊日期: 2007-06-06
住址: 過去*現在*未來
文章: 42
精華: 0
現金: 58 金幣
資產: 118 金幣
預設

引用:
作者: leowang 查看文章
PHP 語法:
#include<iostream>
#include<cstdlib>

using namespace std;
int main(void)
{
    
char a[10],b[10];
    
cout <<"Input a:";
    
cin.getline(a,10);
    
cout <<"Input b::";
    
cin.getline(b,10);
    
cout <<a<<":"<<b<<endl;
    
system("pause");
    return 
0;

不能更改陣列大小情況下 在輸入時超過陣列所能容入的字串
要把多餘字串的給移除掉 只列印出陣列能容納的字串
並且能夠正常輸入b字串
有點不明白你的意思......如果說是正常輸入b字串,只要字元其餘部要

那可以降用押~由於getline是連'\0'和'\n'也會讀入的輸入方式

所以若確認輸入的字元量共10個,則建議

語法:
int ;
fstream fin("輸入檔案形式和名稱");
for(i=0;i<10;++) fin >> b[i];
用上面的方式可以避免掉輸入到空白或者換行的字元

問個疑問~你的程式碼有運用到含入檔,為何沒
#include<fstream> 和 fstream fin("輸入檔案形式和名稱");

這樣的話你的開檔路徑沒有,當然無法輸入字元阿
joebin 目前離線  
送花文章: 15, 收花文章: 18 篇, 收花: 28 次
回覆時引用此帖
舊 2007-10-06, 03:25 PM   #5 (permalink)
長老會員
 
leowang 的頭像
榮譽勳章
UID - 2461
在線等級: 級別:111 | 在線時長:12773小時 | 升級還需:219小時級別:111 | 在線時長:12773小時 | 升級還需:219小時級別:111 | 在線時長:12773小時 | 升級還需:219小時級別:111 | 在線時長:12773小時 | 升級還需:219小時級別:111 | 在線時長:12773小時 | 升級還需:219小時級別:111 | 在線時長:12773小時 | 升級還需:219小時
註冊日期: 2002-12-06
文章: 4729
精華: 0
現金: 101679 金幣
資產: 668410953 金幣
預設

這樣說好了
a只能夠儲存10個元素 b也一樣
這個程式在輸入的元素小於10(包含"\n")是正常的
但是如果超過10個元素的話 就會發生錯誤 會導致接下的要輸入的b會無法輸入直接會印出東西
要如何修改 如果輸入超過10元素 只列印出10元素 其餘的捨棄
但接下來要輸入b時要能夠輸入

也就是要避免錯誤的發生 只印出規定陣列大小內的東西
leowang 目前離線  
送花文章: 257, 收花文章: 1161 篇, 收花: 4928 次
回覆時引用此帖
發文 回覆



發表規則
不可以發文
不可以回覆主題
不可以上傳附加檔案
不可以編輯您的文章

論壇啟用 BB 語法
論壇啟用 表情符號
論壇啟用 [IMG] 語法
論壇禁用 HTML 語法
Trackbacks are 禁用
Pingbacks are 禁用
Refbacks are 禁用

相似的主題
主題 主題作者 討論區 回覆 最後發表
聊天 - 癌症的疑問...... zzz8669039 生活話題、日常閒聊、喇勒唬爛灌水區 15 2007-06-08 11:53 PM
求助 - 燒錄 DVD ISO 檔案的疑問 silananda 一般電腦疑難討論區 4 2007-03-07 08:08 AM
聊天 - 一個奇怪的疑問 fishiii 生活話題、日常閒聊、喇勒唬爛灌水區 16 2006-09-12 09:34 PM
求教兩個xp的疑問 yantyan 軟體應用問題討論區 3 2003-02-22 12:32 PM


所有時間均為台北時間。現在的時間是 05:35 AM


Powered by vBulletin® 版本 3.6.8
版權所有 ©2000 - 2024, Jelsoft Enterprises Ltd.


SEO by vBSEO 3.6.1