使用if/else方式的三個數找最大
阿新 • • 發佈:2019-01-06
//三個數找最大 //應用if else //程式設計環境:vs2012 //這個版本是不帶輸入的,把資料寫在了程式裡 #include<stdio.h> int main() { //首先是if else的應用 int a=2; //---------------------------- //下面的程式程式碼,版本原因報錯 int q =10; int w =16; int e =14; int max; //---------------------------- if(a>1)//if成立的情況 { printf("1\n"); } else { printf("0\n"); } if(a>3)//if不成立的情況 { printf("1\n"); } else { printf("0\n"); } //對於表示式(就是類似於“a>1”這樣的)它執行返回的是一個結果,非0為真,0為假,最後只會返回0和1兩個結果之一 //以上部分沒太大用處,下面正式開始三個數找最大的程式 //-------------------------------------------------- /*int q =10; int w =16; int e =14; //未初始化(沒有賦過值)的變數不能有“讀”操作 int max; //在這裡經常會出一個錯誤:The variable ‘max’ is being used without being initialized. */ //由於版本原因,這裡宣告變數會報錯, //這裡有一個坑, 宣告變數的時候,一行只宣告一個變數,多個變數不是很方便後期檢視 if(q>w) { //雖然語句只有一條,但應該養成加括號的習慣,讓可讀性更好 max = q; } else { max = w; } if(max>e) { printf("%d\n",max); } else { printf("%d\n",e); } }
三個數比較大小,核心是兩兩比較,把稍微大的三個數比較大小的問題進行拆分,化為兩兩比較!
知識點:
1.0為假,非0為真,’真‘的值理解為1
2.a>1是有值的,結果是真(因為a=2),輸出其結果可得1
3.宣告變數要養成好一行一變數的習慣,一目瞭然
4.常犯錯誤:The variable ‘max’ is being used without being initialized.這是因為變數未初始化就進行了‘讀’操作
5.sum=sum+1(假設sum已經初始化)和sum=max+1(假設max未初始化),可以根據這個例子來理解(先讀取)