Excel如何設(shè)置動態(tài)求和 Excel設(shè)置動態(tài)求和方法
1983
2022-05-29
1.最簡單的:
如果程序要使用循環(huán)來讀取來自鍵盤的文本輸入,并且遇到'#'字符時就停止讀取輸入
//循環(huán)使用cin
#include
int main()
{
using namespace std;
char ch;
int count = 0;
cout << "輸入字符串;以# 表示退出: \n";
cin >> ch;
while (ch!='#')
{
cout << ch;
++count;
cin >> ch;
}
cout << endl << count << "字節(jié)\n";
system("pause");
return 0;
}
輸入:my name is hello#world!
觀察輸出結(jié)果,發(fā)現(xiàn)確實以‘#’為截止符,但是為什么程序在輸出時省略了空格呢?原因在于cin,讀取char值的時候,與讀取其他基本類型一樣,cin將忽略空格和換行符,所以空格沒被顯示,也沒被計數(shù)。
2. 使用cin.get(char)進行補救
//循環(huán)使用cin.get()
#include
int main()
{
using namespace std;
char ch;
int count = 0;
cout << "輸入字符串;以# 表示退出: \n";
cin.get(ch); //替換 cin >> ch;
while (ch != '#')
{
cout << ch;
++count;
cin.get(ch); //替換 cin >> ch;
}
cout << endl << count << "字節(jié)\n";
system("pause");
return 0;
}
輸入:my name is hello#world!
此時,空格也被記錄下來。
(備注:有的同學(xué)會很好奇,cin.get()似乎能夠有1個參數(shù),也可以2個參數(shù),這到底怎么使用?這個其實是C++重載特性)
3. 進階:假如'#'本身就有用,那么豈不是這個截止符 還要換?答案是:不必麻煩!有文件尾條件EOF
使用CTRL+Z ?
//循環(huán)使用cin.get() ,截止符EOF默認(rèn)
#include
int main()
{
using namespace std;
char ch;
int count = 0;
cout << "輸入字符串;以# 表示退出: \n";
cin.get(ch); //替換 cin >> ch;
while (cin.fail() == false ) //替換 while(ch != '#')
{
cout << ch;
++count;
cin.get(ch); //替換 cin >> ch;
}
cout << endl << count << "字節(jié)\n";
system("pause");
return 0;
}
備注:51字節(jié),其實包含了最后CTRL+Z這一個。
C++
版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實后本網(wǎng)站將在24小時內(nèi)刪除侵權(quán)內(nèi)容。