C ++ 陣列 | 尋找最大、最小值,陣列(Array)_1
阿新 • • 發佈:2018-12-07
目錄
尋找最大、最小值
對於這個程式設計測驗,我們將找到使用者將輸入的15個數字的最小值和最大值以及平均值。
#include <iostream> int main() { int userInput = 0; int maxNumber = 0; int minNumber = 100; int sumTotal = 0; float average = 0; //get the numbers from the user for(int i = 0; i < 15; i++) { std::cout << "Enter a number: "; std::cin>>userInput; std::cout << userInput << "\n"; if(userInput > maxNumber) { maxNumber = userInput; } if(userInput < minNumber) { minNumber = userInput; } sumTotal = sumTotal + userInput; } std::cout << "Maximum number = " << maxNumber << "\n"; std::cout << "Minimum number = " << minNumber << "\n"; average = sumTotal / 15.0; std::cout << "Average = " << average << "\n"; return 0; }
執行輸入:
14 23 88 97 60 54 33 26 100 97 55 63 89 78 69
執行結果:
Maximum number = 100
Minimum number = 14
Average = 63.0667
陣列
陣列包含在C ++程式語言中,就像它們在其他語言中一樣。 這意味著你們中的許多人已經熟悉陣列。
因此,學習使用陣列是一個很好的訓練。我應該告訴你一件事:在C ++中,您不需要學習陣列。你可以使用向量而不是使用陣列。 向量比陣列更強大/更通用。但這裡我還是希望能夠學好陣列:
C++ 陣列可以宣告為:
variableType arrayName [ ] = {variables to be stored in the array};
或者像:
variableType arrayName[array size]
有關陣列的詳細資訊點選這裡。
我們可以通過標識特定的索引來訪問陣列中的值。
variableType arrayName[ index number ]
用這個程式練習陣列。例項化 int 陣列:
int userInput[40];
我們來一起看程式碼:
#include <iostream> #include <stdio.h> int main() { int searchKey = 0; int searchArray[10] = {324,4567,6789,5421345,7,65,8965,12,342,485}; int location = 0; while(1) { std::cout<<"Enter an integer ('-1' to quit): "; scanf("%d", &searchKey); std::cout<< searchKey<<"\n"; if(searchKey == -1) { break; } for(int i = 0; i < 10; i++) { if(searchKey == searchArray[i]) { location = i; break; } location = -1; } if(location != -1) { std::cout<<searchKey<<" is at location "<<location<<" in the array.\n"; } else { std::cout<<searchKey<<" is not in the array.\n"; } } return 0; }
輸入-1執行結果:
輸入陣列內索引為0的數字:
輸入不在陣列內的數字:
程式碼解析:
1。scanf("%d", &searchKey); 這裡又有一個允許使用者輸入的函式,之前 std::cin 還用嗎??
答:在C++裡面,cin是輸入流,scanf是標準輸入。在方便性上,cin優於scanf,舉例:
int a;
cin>>a;
scanf("%d",&a);
但如果是輸入資料很大的情況下,建議不要用cin,因為它所佔用的時間十分長。例如 for(int i=1;i<=1000000;i++) cin>>a[i]; 可能會用掉比 scanf 多很多倍的時間。所以,一些單個的輸入可以用 cin,但迴圈之類的輸入最好用 scanf() 。
程式設計中最沒用的東西是原始碼,最有用的東西是演算法和資料結構。