本文目錄一覽:
如何用C語言的四個if語句從四個整數找到最大值和最小值
首先,你的程序由於定義了變數a,又定義了數組a,而此時數組名a不是變數,與前面定義的變數a重複,只要把數組名a改成非a,b,c,maax,min,i,j的其他字母就行啦但是修改後的程序只能輸入數據,不能輸出結果。其中一個很明顯的錯誤就是第7行i=1,數組是從下標0開始,很明顯你只能存儲2個數。經過一番調試,如果你非得用數組解題,可用如下程序:#include stdio.h
void main()
{
int i,j,a[3],t;for (i=0;i3;i++)
{printf(“請輸入第%d個數的值:”,i+1);scanf(“%d”,a[i]);printf(“\n”);}for(i=0;i2;i++)
for(j=i+1;j=2;j++)
if(a[i]a[j])
{
t=a[i];
a[i]=a[j];
a[j]=t;
}printf(“最大值為%d\n”,a[0]);
printf(“最小值為%d\n”,a[2]);
}程序結果: 對於你後來問到的為什麼改後的程序沒錯而能運行的問題,是因為你定義了一個含有三個元素的數組,而元素下標只能從0-2,而你編的時候剛好寫多了一個a3,所以程序對於a1和a2還能分配存儲空間,但是對於a3這個額外生出的數據就不知道往哪裡存儲;還有,你下面進行比較是從a0開始,而這個變數又沒分配數值,無法進行比較,所以就無法輸出結果 如果你真的很想用abc三個變數和if語句,那麼下面這個程序應該適合你,程序如下:#include stdio.h
void main()
{
int a,b,c,t;
printf(“輸入a、b、c的值(用空格分開):”);
scanf(“%d %d %d”,a,b,c);
if(ab)t=b,b=a,a=t;
if(ac)t=c,c=a,a=t;
if(bc)t=c,c=b,b=t;
printf(“最大數:%d\n”,a);
printf(“最小數:%d\n”,c);
}程序結果: 這種題目我看用if語句就最簡單啦,至於用到數組和函數調用就有點大題小做。其實函數調用只是if語句的濃縮。
c語言if語句的用法
c語言提供了三種形式的if語句:
1、if(表達式)語句。
例如:if(xy)printf(“%d”,x);
此時,如果表達式為真,則執行printf語句。
2、if(表達式)語句1 else 語句2
例如:
if(xy)printf(“%d”,x);
else printf(“%d”,y);
此時,如果xy成立為真,則執行語句printf(“%d”,x),然後直接跳過else,同時也跳過語句printf(“%d”,y),去執行之後的語句。
如果xy不成立為假,則不執行語句printf(“%d”,x),執行語句printf(“%d”,x)。
3、if(表達式1)語句1
else if(表達式2)語句2
else if(表達式3)語句3
else if(表達式m)語句m
else 語句 n
此時,哪個表達式為真,則運行哪個if後面的語句。如表達式3成立為真,執行語句3。
在每個語句中,可以有多個語句,但需要加上大括弧
例:if(xy){printf(“%d”,x);break;}
擴展資料:
if語句使用的注意事項:
1.if(條件表達式)其後沒有分號。
一般來說,有”{}”有沒有”;”,有”;”就沒有”{}”
2.if語句所控制的語句如果是一條語句,我們可以不寫大括弧;
如果控制的是兩條以上的語句,必須加大括弧。
if語句的控制體沒有加大括弧是其後跟的一條語句。
建議:永遠加上大括弧。避免不必要的錯誤。
參考資料:百度百科-if語句
5個數求最大值 c語言用if語句怎麼求?
#include stdio.h
int main()
{
int a1,a2,a3,a4,a5,max;
printf(“輸入5個數的值: “);
scanf(“%d%d%d%d%d”,a1,a2,a3,a4,a5);
max=a1;
if(maxa2)
max=a2;
if(maxa3)
max=a3;
if(maxa4)
max=a4;
if(maxa5)
max=a5;
printf(“5個數中的最大值為: %d\n”,max);
return 0;
}
示例運行結果:
輸入5個數的值: 12 36 5 88 64
5個數中的最大值為: 88
原創文章,作者:ROAS,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/140766.html