我的老師要我們用陣列來輸出十個數中最大的數,如圖是我的程式 ,每次都是輸出的最后一個輸入的數
,求大佬指點迷津
uj5u.com熱心網友回復:
你的if陳述句后面帶了分號,這就造成了if就成了一個沒有任何作用的一段陳述句,所以你把if后面的分號去除就可以了uj5u.com熱心網友回復:
if和for陳述句帶個大括號不好嘛?uj5u.com熱心網友回復:
正如樓上朋友說的,if(a[i]>max);
改為
if(a[i]>max)
以下是除錯結果

如果是
if(a[i]>max);,則以上是一個陳述句,就喪失了if陳述句的特性,也即是說,無論a[i]>max的值是true還是false,都會執行
max = a[i];,所以,無論你的輸入是什么
max = a[i];都會執行9次,即max的值始終是最后一個輸入的值。
uj5u.com熱心網友回復:
#include <stdio.h>
#define N 10
int main(int argc, char* argv[])
{
int i, a[N];
printf("請輸入十個整數:\n");
for(i=0; i<10; i++)
{
scanf("%d", &a[i]);
}
int max = a[0];
for(i=1; i<10; i++)
{
if(a[i]>max)
{
max = a[i];
}
}
printf("最大的數為%d\n", max);
return 0;
}
uj5u.com熱心網友回復:
天吶 去的分號就可以了 ??C語言真是太嚴謹了 蟹蟹
uj5u.com熱心網友回復:
啊~我現在只知道int main 和for后面有兩個及以上陳述句時還有if后面還要if時要有大括號 其他.....還在學習中
uj5u.com熱心網友回復:
嗯嗯嗯 下次要把眼鏡戴上!!!
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/119983.html
標籤:C語言
上一篇:c語言字串
