《明解C語言》練習題4-2的實現
這個個練習題要求讀取兩個整數值,然後計算他們之間所有的整數之和, 對於我這種程式設計小萌新,其實 是真不會編寫的 ,腦子裡想了很多 ,比如怎麼使用if來完成,實際上 還是做不出來,只好去CSDN借鑑下別人的。圖靈寫下文章 剖析 時不時拿出來看看,希望以後看到這種腦子裡有思路。
// 原始碼如下:
include
int main(void) { int a, b, sum=0, min, max;
puts("請輸入兩個整數。");
printf("整數a:"); scanf("%d",&a);
printf("整數b:"); scanf("%d",&b);
(a>b)?(max = a)&&(min = b):(min = a)&&(max = b);
do {
sum+=min;
} while(min++ != max);
(a>b)?(max = a)&&(min = b):(min = a)&&(max = b);
printf("大於等於%d小於等於%d的所有整數的和是%d",min,max,sum);
return 0;
}
作者:VividColors 來源:CSDN 原文:https://blog.csdn.net/VividColors/article/details/80554311 版權宣告:本文為博主原創文章,轉載請附上博文連結!
Blockquote
(a>b)?(max = a)&&(min = b):(min = a)&&(max = b); 這裡使用了條件運算子【三目運算子】a>b如果成立則是 (max = a)&&(min = b) 這個值,不成立則是(min = a)&&(max = b); 一句話 解讀這個就是判定 a和b誰大誰小,且將大小對應的值賦給 max/min。
Blockquote
do的迴圈體 do { sum+=min; } ,這句只定義了一個加法迴圈,大家看明解這本書可能沒提到+=這個概念,很好理解 比如 a+=b相當於a=a+b。sum+=min 通俗易懂 就是 sum=sum+min 和 =和+最小值,有朋友會說這也不對啊,別急繼續往下看。
while 條件1→while(min++ != max);,while 的第一句又看不懂了,對於完全萌新來說CSDN的答案,確實是有些是超綱的也僅限明解這本書,譚浩強的我記得在開頭就將了這個 。不要緊認真看分分鐘明白。 ++! 是先自增再參與運算,!++是先運算再自增是不是 超級繞口 ,這裡開個車,倆人那啥不可描述那啥時候,成年小朋友都懂?【 ++!】是自己先爽了,再去找女孩子;【!++】是先服務女孩子,後邊自己自然也更爽,這裡落到運算上就是 min最小數+1 然後再加, 那麼加到什麼時候停止呢 ,來人都有感覺 次數夠了,max就是最大值,加到max停止。 這樣邏輯上就通了 1+2+3。。。
while 條件2 →(a>b)?(max = a)&&(min = b):(min = a)&&(max = b); 這句好理解 了 好像是沒必要了 ,講真,我在dev上刪除了這個 照樣結果正確 ,
CSDN這個作者的解決方法應該是基於有語言基礎的,不曉得 看過明解C 的大佬有木有更合適的原始碼 案例,最後仍然感謝csdn作者的思路。
別死扣這個問題啦 ,直接往下看書,下邊基本就提到了這個 複合賦值運算
相關文章
- 【C語言練習題】小球反彈問題C語言
- 大一C語言程式設計練習題C語言程式設計
- C語言練習——資料加密C語言加密
- 8.C語言的一些練習題坑整理C語言
- c語言實現貓吃老鼠的問題C語言
- 《明解C語言》第三章學習筆記C語言筆記
- C語言練習(3)——語句x=x&(x-1)的真實意義C語言
- 《C程式設計語言》 練習3-5C程式程式設計
- C語言-for迴圈之窮舉法練習C語言
- 《明解C語言》中級篇 第8章C語言
- 掃雷--C語言實現C語言
- c語言實現階乘C語言
- C程式設計語言(第2版·新版)練習題1-4C程式程式設計
- C程式設計語言(第2版·新版)練習題1-5C程式程式設計
- C程式設計語言(第2版·新版)練習題1-6C程式程式設計
- C程式設計語言(第2版·新版)練習題1-7C程式程式設計
- C程式設計語言(第2版·新版)練習題1-8C程式程式設計
- 練手必備 | C 語言快速實現五子棋
- C語言解決排序問題C語言排序
- C語言課程訓練系統題-字串cquptC語言字串
- C語言學習方法,怎麼學習C語言?C語言
- C語言__LINE__實現原理C語言
- C語言實現檔案加密C語言加密
- c語言實現this指標效果C語言指標
- 高精度加法(C語言實現)C語言
- C語言實現TCP通訊C語言TCP
- Object-C語言Block的實現方式ObjectC語言BloC
- PID演算法的C語言實現演算法C語言
- 回溯和遞迴實現迷宮問題(C語言)遞迴C語言
- 題解1196:去掉空格 (C語言描述)C語言
- C語言程式設計練習 GPS資料處理C語言程式設計
- c語言複習C語言
- C/C++語言的學習方向C++
- C語言回撥日誌庫的實現C語言
- 探秘掃雷遊戲的C語言實現遊戲C語言
- 排序演算法-C語言實現排序演算法C語言
- 高精度減法(C語言實現)C語言
- C語言實現推箱子游戲C語言