ようこそ ゲスト さん、新規登録(無料)して気になる疑問を解決しませんか?

質問

質問者:hiro3932 プログラム
困り度:
  • すぐに回答を!
プログラムで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
です。
質問投稿日時:08/04/29 18:01
質問番号:3985218
この質問に対する回答は締め切られました。
最新から表示回答順に表示良回答のみ表示

回答

良回答10pt

回答者:edomin2004 double height;
double weight;
 ↓
float height;
float weight;
種類:アドバイス
どんな人:一般人
自信:参考意見
回答日時:08/04/29 18:20
回答番号:No.2
この回答への補足ありがとうございます
直りました
この回答へのお礼この回答にお礼をつける(質問者のみ)

回答

 

回答者:koko_u_ scanf() のマニュアルを読むといいよ。
種類:アドバイス
どんな人:一般人
自信:参考意見
回答日時:08/04/29 18:15
回答番号:No.1
この回答へのお礼この回答にお礼をつける(質問者のみ)
 
最新から表示回答順に表示良回答のみ表示