10/10/16 18:32:22
はじめて投稿させていただきます初心者です。
今キーボードから入力した無数の数字の中から、
大きいものを順番に上から3つ表示するプログラムを作成中で、
インターネット上で同様のプログラムがあったので拾ってきました。
ここでif以降の処理の意味が理解できませんでした。
おそらく上から順番に次々と数字を代入している処理なのでしょうが・・
また最初に定義されていない「t」という変数の意味と、
t=a a=d d=tとループするような代入を繰り返していることの意味や、
なぜ同じ変数を指定しているのに処理が実行できるのかがわかりません。。
どなたかわかりやすく教えていただけないでしょうか
#include <stdio.h>
int main() { float a,b,c,d; int i; a=b=c=0;
for(i=0;i<10;i++){ scanf("%f",&d);
if(d>a){ float t=a; a=d; d =t; }
if(d>b){ float t=b; b=d; d =t;}
if(d>c){ float t=c; c=d; d =t; }
}
printf("%.1f>%.1f>%.1f\n",a,b,c);
return 0;
}