- 締切済み
プログラム
プログラムで2人の、名前と身長と体重を入力して体重と身長の入力値を出力するプログラムを作りました。 しかし、入力と出力の値が違います! このプログラムのどこが間違ってますか?教えてください! #include<stdio.h> #define NUMBER 2 typedef struct { char name[11]; double height; double weight; }student; int main(void) { int i; student a[NUMBER]; for (i=0; i<NUMBER; i++) { printf("これは %d 人目の生徒です(5人まで):\n",i+1); printf("名前を入力してください(10文字以内)\n入力された名前:"); scanf("%s",a[i].name); printf("身長を入力してください(10文字以内)\n入力された身長:"); scanf("%f",&a[i].height); printf("体重を入力してください(10文字以内)\n入力された体重:"); scanf("%f",&a[i].weight); printf("%f %f\n",a[i].weight,a[i].height); } return 0; } 実行結果 これは 1 人目の生徒です(5人まで): 名前を入力してください(10文字以内) 入力された名前:1 身長を入力してください(10文字以内) 入力された身長:1 体重を入力してください(10文字以内) 入力された体重:1 0.000000 0.000000 これは 2 人目の生徒です(5人まで): 名前を入力してください(10文字以内) 入力された名前:1 身長を入力してください(10文字以内) 入力された身長:1 体重を入力してください(10文字以内) 入力された体重:1 0.000000 0.000000 です。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
double height; double weight; ↓ float height; float weight;
- koko_u_
- ベストアンサー率18% (459/2509)
scanf() のマニュアルを読むといいよ。
補足
ありがとうございます 直りました