1樓:丷爫魚
1全部樓主,書上的程式是對的,你的程式是錯的。
你可以試試輸入 3 4 5 6 然後輸入一個非數字,比如:a,然後按enter,就得到結果了
原因:std::cin >> value函式當接受到一個非整型(為什麼是整型,因為value是int)時返回0,
只有這個時候,才能退出while迴圈,從而輸出。
你寫的程式輸出語句在while迴圈裡面,每執行一次迴圈就輸出一次,你想要去掉前3個必須把輸出放在迴圈體的外面,才能保證只執行一次輸出。
2樓:
#include
int main()
std::cout << "sum is: " << sum << std::endl;
return 0;
}注意看while裡面的改變
3樓:人for我我for人
如果用視窗執行,那while的判斷條件xtd::cin>>value會一直執行,因為你如果不強制結束程式,那它會一直等使用者輸入值進去,這樣永遠結束不了。
如果要解決,可以採用檔案讀寫方式。
標頭檔案加上#include
#include
int main()
4樓:
int main()
std::cout<<"sum is: "< return 0;} 問一個簡單c++問題 5樓:匿名使用者 這是引用,功能和指標有些像。 6樓:匿名使用者 系統提供的巨集 測試一個條件並可能使程式終止 本劇中,看index >= 0 && index < size 是否成立 7樓:疏冰 & 表示引用 這裡是說返回值是一個引用的意思,一個point類的引用。 一個簡單的c++問題 8樓: 因為用了無符號型變數 y-z=50 50沒有符號 但是z-y=-50 把-50賦值給你個無符號變數的話,公式是這樣的(int是32位)2^32-50=4294967246 9樓:中大 你的x是unsigned int型別的,即只能≥0,根據記憶體分配原則,它溢位即從尾部重新開始~ 如果x是int型別的,既不會出現這種情況啦 10樓:匿名使用者 記憶體中如果有一段10000001(二進位制),如果把他當成有符號的數,那麼第一個1是負號,這個數值就應該是 -1,如果當成無符號數,那數值應該是129。 無符號的50減去無符號的100,應該是個負數,但是這個負數在記憶體中是當成無符號的正數來取值的 弱弱的問一個簡單的c++問題。。。。。。
50 11樓:能能天使 我也是這個問題,結果發現使用了ostream但是未在標頭檔案開始包含 !!真是太粗心了!!你在兩個檔案的最開始加上 #include 就好了 12樓: 你的問題錯的太多了 你看錯誤資訊啊 'ostream' : 'friend' not permitted on data declarations 不能修飾日期?? binary 'operator <<' has too few parameters 引數少了 syntax error : missing ';' before '&' ....... .......... 好多問題 吧原始碼發過來看看 x.tostring(); x不是string型別的吧 是不是要強轉一下(string) 看的頭暈 一個簡單的c++問題 13樓:雨愁軒 #include #include #include #define e 2.718281828main() 一個簡單的c++問題 14樓: 這個幫你看了下,有兩個錯誤 #include using namespace std; template ; //錯誤一:分號不要t max(t x,t y,t z) 其實這都是小錯誤,以後認真點就沒事,呵呵 15樓:左_後衛 樓上說得對.我試了一下.就是那的錯誤. 我想你這個程式應該是測試模板函式吧.不過,你的a,b,c,x,y,z全都是整型,怎麼體現?你可以把x,y,z換成別的型別的資料,這樣是不是會更好一點? 16樓:箕廣折含玉 這是程式設計者為了避免用「=」來比較大小時所犯的過錯而採取的聰明的做法。比如判斷n是否為0,通常同 if(n ==0),當粗心時,會用if(n =0)來比較,編譯時,系統會將0賦給n,由於n=0,if表示式的值為「假」,這與原來的意圖恰好相反。如果用if(0==n)來比較,當然是可以的,粗心時,用if(0=n),那麼編譯程式會報錯。 17樓:洪唱瑞運華 首先,#if等和if的功能是一樣的,不同的是#if是對編譯物件的選擇,if是對語句執行的選擇。 然後,條件編譯:如上,按條件對語句進行編譯。 #if1中的1,就人為地控制編譯區塊,想編譯intmain()……塊地時候,在#if後加個1,要編譯main(),就人為地把1去掉(或者改成0)。如果剛接觸,可能會奇怪為什麼要人為地修改**,這時就仔細想想「編譯語句」和"執行語句"兩種概念,「編譯」是在**執行前,當然要人為修改**,「執行」是在**執行過程中,就要藉助表示式啦。呵呵 18樓:臧寰東郭芷 inti=0;if( i=0) 沒看懂阿,條件表示式放在等號的左邊而被賦值~難道是這樣的? if(i=i=0) 我來回答你 1.0 的作用是讓a b的結果是一個浮點數,要不然a b就是一個整數了。換個寫法就是c float a b,來個強制型別轉換,使得c的值是一個浮點數。回答完畢。當然是乘了!就是乘啊。用1.0就是把這個式子變成float型,也許c是float型的吧。為了沒有精度損失 應該是改變a的型別吧!... cin inline 1 你只輸入了一個位元組 或者說你輸入時記憶體越界了 include include using namespace std int main int count 0 cin inline int i 0 while inline i 0 cout the number of ... 問題出在這裡 int a,b a 10 b 20 你的 a,b 都沒有初始化,指向了未知的地方,也就是所謂的野指標。可以設定兩個變數x,y,將 a,b 指向這兩個變數,然後作為引數呼叫 swap 函式。另外,你的 swap 函式忘寫函式名了吧?指標一般以小寫字母 p 開頭,表示 pointer,好習...簡單的c 問題,一個簡單的c 問題
C 簡單問題求教,一個C 簡單問題 求教
C語言一個簡單的問題,一個簡單c語言小問題?