ユーザー入力を受け取り、最小値と最大値の前の値を比較するCプログラムを作成したいとします。私が抱えている問題は、以前に入力した値をminおよびmaxとして使用するのではなく、値の比較が自身をリセットし続けることです。プログラムは、ここに.....プログラムを停止する関数を使用して最小値または最大値を決定する
をファイルループの終わりを使用するプログラムでの私の試みです:
#include <stdio.h>
//variables for the functions:
double MinMax(double a);
//main program
int main(){
double num;
while (num!=EOF){
printf("Enter a real number: ");
scanf("%lf",&num);
MinMax(num);
}
return 0;
}
//function
double MinMax (double a){
double max=0,min=0;
if (a>max){
max=a;
}
else if (a<min){
min=a;
}
else {
}
printf("The max is %lf and the min is %lf\n",max,min);
}
関数を呼び出すたびに、最大値と最小値がゼロに設定され、関数内に変数を格納することはできません。それらの変数を持つクラスとMinMaxのような関数を作成する必要がありますが、そのクラスの中で呼び出すたびにminとmaxを0にリセットする必要はありません。次に、クラスは変数情報を格納することができ、minmaxを呼び出すたびに情報を更新します。または、参照で変数を渡すための答えに記載されているとおりです。 – Russ
"Cプログラムを書いてみたいです" - C++ではなく、Cという質問にタグを付けるべきです。 –
"C++プログラムを書いてみたいです" - なぜこのコードは完全にCですか? –