こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

プログラム

プログラムで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
です。

投稿日時 - 2008-04-29 18:01:25

QNo.3985218

すぐに回答ほしいです

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.2

double height;
double weight;
 ↓
float height;
float weight;

投稿日時 - 2008-04-29 18:20:29

補足

ありがとうございます
直りました

投稿日時 - 2008-04-29 22:55:54

ANo.1

scanf() のマニュアルを読むといいよ。

投稿日時 - 2008-04-29 18:15:05

あなたにオススメの質問