正如我上面所說,我有一個用戶輸入有多少個數字,然后輸入他們有多少個數字。我知道這可能是一個簡單的修復,但有人可以告訴我我在這里做錯了什么。
例如:如果輸入是 3 -55 55 -25,那么輸出是:
-55 _ 55 _ -25
#include <iostream>
using namespace std;
int main() {
int numVals;
int i;
int numVals_2;
cout >> "Enter how many numbers you have: ";
cin >> numVals;
for (i = 0; i < numVals; i) {
if (i >= numVals) {
cout << numVals_2 << endl;
}
else {
cout << "Enter one of your numbers: ";
cin >> numVals_2;
cout << numVals_2 << " _ ";
}
}
return 0;
}
uj5u.com熱心網友回復:
我該怎么做才能使“_”不在最后?
也許改變分隔符?
首先,在之前的單獨回圈中,將值讀入某個陣列a[]。然后將它們列印出來。
const char *sep = "";
for (i = 0; i < numVals; i) {
cout << sep << a[i];
sep = " _ ";
}
cout << endl;
在 的 極端情況下numVals == 0,考慮這會列印 one '\n',這是我所期望的。
uj5u.com熱心網友回復:
首先,int 'for' 陳述句,i >= numVals 會發生,當 i euqals numVals,C 將退出 'for' 陳述句,所以你應該改變你的 'for' 陳述句
for (i = 0; i < numVals; i) {
//if (i >= numVals) {
// cout << numVals_2 << endl;
//}
//else {
cout << "Enter one of your numbers: ";
cin >> numVals_2;
/*it shows that this number is not the last number*/
if(i != numVals)
cout << numVals_2 << " _ ";
else
cout << numVals_2;
//}
uj5u.com熱心網友回復:
謝謝大家的意見!對此,我真的非常感激。對于那些想知道的人,我是 C 的菜鳥。我確實意識到 numValues_2 是一個愚蠢的名字。我這樣命名它是因為這是我現在正在閱讀的教科書中的一個問題。我想要一個快速的變數名,我不想多想。我知道這不是最佳實踐,并且在未來,我會更多地考慮我的變數名,以便它們更有意義。如果你們好奇,我已經在下面發布了答案:)
#include <iostream>
using namespace std;
int main() {
int numberValues;
int i;
int valueFromInput;
cin >> numberValues;
for (i = 1; i <= numberValues; i) {
cin >> valueFromInput;
/*it shows that this number is not the last number*/
if (i != numberValues) {
cout << valueFromInput << " _ ";
}
else {
cout << valueFromInput << endl;
}
}
return 0;
}
uj5u.com熱心網友回復:
您的程式將在輸入后列印一個字母后跟一個下劃線。
一些免費的建議:
- 始終給出反映變數的名稱。
- 在你的 for 回圈中,我永遠不會大于或等于 i,這就是重點。
- 您不應該在回圈之前創建 i ,使用回圈創建它可以節省記憶體。
你應該考慮使用陣列:
#include <iostream>
using namespace std;
#define MAX_ARRAY_SIZE 100
int main() {
int nValues;
cout << "how many numbers are gonna be inputed?" << endl;
cin >> nValues;
int values[MAX_ARRAY_SIZE];
for (unsigned i =0; i< nValues; i){
cout << "enter the next number" <<endl;
cin >> values[i];
}
for(unsigned i =0; i< nValues-1; i){
cout << values[i] <<"_";
}
cout << values[nvalues-1] <<endl;
}
```
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/510380.html
