1、只能是在程序里判斷‘-’這個(gè)字符。你需要能夠判斷出‘-’是一個(gè)減號還是一個(gè)負(fù)號。比較簡單的方法是,輸入計(jì)算式時(shí)你規(guī)定好格式,負(fù)數(shù)一律用()括起來。這樣比較容易判斷是不是負(fù)數(shù)。當(dāng)然你也可以定義其它的格式。

10年積累的網(wǎng)站設(shè)計(jì)、成都網(wǎng)站設(shè)計(jì)經(jīng)驗(yàn),可以快速應(yīng)對客戶對網(wǎng)站的新想法和需求。提供各種問題對應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識你,你也不認(rèn)識我。但先網(wǎng)站制作后付款的網(wǎng)站建設(shè)流程,更有莊浪免費(fèi)網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。
2、出現(xiàn)負(fù)數(shù),是因?yàn)槠鏀?shù)、偶數(shù)的和太大,超過了long(長整型)類型的最大值了。個(gè)數(shù)是對的,0-151554545共有151554546個(gè)數(shù),其中奇數(shù)偶數(shù)各有75777273個(gè)。
3、可能與你scanf函數(shù)中格式控制符中的“.”有關(guān),一般情況下,格式控制符之間最好不要有這種分隔符,如果需要,在輸入數(shù)據(jù)時(shí)也必須原樣加上。
4、兩種解決方法,你自己選擇一種:把long x,y;改成int x,y;把所有的%ld改成%d 把函數(shù)定義語句改為long fun(long x)如果有不明白之處,請留言。
5、個(gè)數(shù)是對的,0-151554545共有151554546個(gè)數(shù),其中奇數(shù)偶數(shù)各有75777273個(gè)。
1、你先添加一個(gè)正負(fù)檢驗(yàn)函數(shù),就是看字符串第一個(gè)是不是“-”號,然后如果是,就相應(yīng)的執(zhí)行相反的函數(shù)就行,是加法檢測到“-”號直接調(diào)用減法運(yùn)算,這是一個(gè)辦法。
2、其中奇數(shù)偶數(shù)各有75777273個(gè)。至于for不動(dòng)了,是for循環(huán)進(jìn)入死循環(huán)了,你的編譯器中int是2bytes,最大值為32768,當(dāng)i加到32769的時(shí)候,就越界了,成為負(fù)數(shù),所以i永遠(yuǎn)不會大于你輸入的151554545這個(gè)數(shù)值,所以死循環(huán)。
3、試了一下,b 為0 或 為 負(fù) 可以 得結(jié)果,所以就不細(xì)查程序了。
4、if(n=0)這里寫錯(cuò)了 應(yīng)該是 if(n==0)否則n會被賦值為0,這個(gè)判斷永遠(yuǎn)無法執(zhí)行,而下面的分支會出現(xiàn)除0錯(cuò)誤。
5、while(n0)的循環(huán)體里有exit(0);會讓程序退出,在這里效果等同于return 0;所以后面的語句都不會繼續(xù)執(zhí)行。所以這個(gè)答案是可行的。不過個(gè)人覺得while(n0)改成if(n0)比較好。
1、把long x,y;改成int x,y;把所有的%ld改成%d 把函數(shù)定義語句改為long fun(long x)如果有不明白之處,請留言。
2、可能與你scanf函數(shù)中格式控制符中的“.”有關(guān),一般情況下,格式控制符之間最好不要有這種分隔符,如果需要,在輸入數(shù)據(jù)時(shí)也必須原樣加上。
3、求階乘沒必要弄這么復(fù)雜,你非要用遞歸算法求階乘也行,問題出在輸入負(fù)數(shù)時(shí),要有c語言終止程序的代碼。
新聞名稱:c語言函數(shù)輸入負(fù)數(shù) c語言如何輸入負(fù)數(shù)
路徑分享:http://www.chinadenli.net/article36/dehissg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供虛擬主機(jī)、網(wǎng)站內(nèi)鏈、面包屑導(dǎo)航、電子商務(wù)、服務(wù)器托管、ChatGPT
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)