私はこのコードを書いていますが、classifykids()では、x配列から4つの新しい配列を作成しています。その後、4配列の要素を出力しようとしていますが、その番号が長い番号を印刷するC++で配列要素を印刷するには?
#include <iostream>
using namespace std;
int *readkid(){
int * kids = new int[4];
int counter=1;
for (int i=0; i<4 ; i++){
cout << "Enter the age for kid number " << counter << ":[ 1 to 10] " << endl;
cin >> kids[i];
counter++;
}
return kids;
}
void classifyKids (int * x){
int * perk = new int[20];
int * kg1 = new int[20];
int * kg2 = new int[20];
int * elementry = new int[4];
for (int i=0; i <21; i++){
if (x[i] < 3){
perk[i] = x[i];
} else if (x[i] < 3 && x[i] > 3) {
kg1[i] = x[i];
} else if(x[i] > 6 && x[i] > 4){
kg2[i] = x[i];
} else if(x[i] > 6){
elementry[i] = (x[i]);
}
}
for(int i=0; i<4;i++)
cout << "Here is it :" << elementry[i] << endl;
}
int main() {
int *x;
x = readkid();
classifyKids(x);
/*
for (int i=0; i<4; i++){
cout << *(x+i) << endl;
}
*/
return 0;
}
これを実行したら、より良いスタイルについてのコメントを得るには、http://codereview.stackexchange.comを訪れる価値があります。 –
コンパイラエラーが表示されます。 'x'は4つの要素しか持ちませんが、最大21要素までアクセスしようとしています! – CinCout
'if(x [i] < 3 && x[i] > 3)'どのような条件ですか? –