1樓:網友
用選擇法:用j記住最小的數的位置;
#include
void main()
int a[10]=;
int i,j,t;
j=0;/*假設a[0]是最小的,j記住0這個下標*/for(i=j+1;i<10;i++)從a[0]下乙個數開始找*/if(a[i]t=a[0];/把最小的數a[j]與a[0]互換*/a[0]=a[j];
a[j]=t;
此時最小的數為a[0],最小數原來的下標為j*/
c++~選這題~下面能正確定義陣列,並能正確賦值的語句是?請說明各個選項的理由。
2樓:網友
a錯誤,因為陣列是在堆上分配空間大小必須在編譯時知道,不可動態指定,如果n定義為常量或列舉,那就是正確的。
b錯誤,因為陣列是乙個1行2列的陣列,乙個{}表示一行c錯誤,因為定義了乙個2行的陣列,但是列沒有確定。改成 int c[2]=,}是可以的。
d正確,定義了乙個3行2列的陣列,只初始化前2行資料,後面的用0初始化。
3樓:匿名使用者
選ca明顯錯。b和d都只能存乙個元素,當時它明視訊記憶體多了。
4樓:匿名使用者
a 錯誤,int b[n][n];n是變數,不是具體的數值。c++中宣告陣列時必需指明陣列的大小,例如 int[5][5];b 錯誤,int a[1][2] 和 int a[2]是同乙個意思,都表示的是同乙個陣列。而,}是二維陣列的賦值,改為應 int a[2][1] =,}
c 錯誤 int a[2];這裡出錯,c++中二維陣列,第乙個下標可以省略,但第二個絕不能省略,應該 改為 int a[2]d 正確。最後 c++中 a[n][m](n,m都是具體的值,如果在宣告時就直接賦值,n可以省略,m不能)n表示行數,m表示列數,即每行可以分配的記憶體大小。
5樓:匿名使用者
a正確b錯誤,因為int a[1][2]是 }不是, }
c正確,會自動確定為int c[2][2]
d錯誤,因為int d[3][2] 後面, {只有2個,不是3個,缺少一組。
請各位幫忙 C 陣列方面的問題謝謝
要動態分配記憶體,然後手工 即可 double x new double n 之後就可以用了,如cin x 1 這樣 不過要記住在程式結束之前要寫delete x 不過c 還是建議使用vector,可以自動管理記憶體,並且大小會自己調整 include std vectorx x.push back...
關於c語言陣列的運算,關於C語言陣列的運算。
首先你可以進行單步測試自己看看能不能學習到過程 程式設計師以後寫程式排錯 要學會自己單步測試找問題 過程很簡單 你定義了一個1維陣列 陣列長度為10 從a 0 a 9 進行for迴圈計算 i 9 a 9 10 9 1 同理 a8 2 a5 5 a2 8 所以輸出 a2,a5,a8 分別就是852 希...
有關c語言陣列的宣告,建立,c語言陣列宣告問題
陣列名可以當做指標使用,但這種指標沒有實際佔用記憶體空間 不存在存放首地址什麼的 因為你只能對該類指標 陣列名 指向的資料操作!沒有你想的那種多佔一個空間存放地址的意思,陣列名不是完整意義的指標 空間的位置看你的陣列在程式中定義的位置,有可能是棧,也可能是堆,也可能是全域性資料域。array可以當做...