#include<stdio.h>
#pragma warning(disable:4996)
class CTest
{
private:
char name[20];
int atk;
int def;
int suu;
public:
CTest(void); //コンストラクタ
~CTest(void); //デストラクタ
void input_data(void);
void output_data(void);
void count(void);
};
CTest::CTest(void){
printf("コンストラクタ\n");
}
CTest::~CTest(void){
printf("\nデストラクタ\n");
}
void CTest::count(void){
printf("\n人数入力==>");
scanf("%d", &suu);
}
void CTest::input_data(void){
for (int i = 0; i < suu; i++){
printf("\n%d人目\n名前==>",i+1);
scanf("%s", &name);
printf("攻撃力==>");
scanf("%d", &atk);
printf("防御力==>");
scanf("%d", &def);
}
}
void CTest::output_data(void){
for (int i = 0; i < suu; i++){
printf("\n%d人目\n名前:%s\n",i+1, name);
printf("攻撃力:%d\n", atk);
printf("防御力:%d\n", def);
}
}
int main(void){
CTest* Obj;
Obj = new CTest; //Obj=new CTest[10];
Obj->count();
Obj->input_data();
Obj->output_data();
delete Obj;
return 0;
}
最後に入力した名前・攻撃力・防御力が人数分出力されてしまいます。
人数分の名前・攻撃力・防御力が正しく出力されるプログラムを教えて下さい。
構造体は使わないでお願いします。