gpt4 book ai didi

c - 确定输入的最大值和最小值

转载 作者:行者123 更新时间:2023-11-30 15:24:48 24 4
gpt4 key购买 nike

我希望系统能够确定输入的最大值和最小值并将其保存在变量中,但我不太确定该怎么做。

这是我的代码:

#include<stdio.h>
#include<stdlib.h>
#include <math.h>
int main(void)
{
float startnummer;
float hoppnummer;
float svarighetsgrad;
float domarpoang1;
float domarpoang2;
float domarpoang3;
float domarpoang4;
float domarpoang5;
float domarpoang6;
float domarpoang7;
float max;
float min;

printf("Startnummer: \n");
scanf_s("%f", &startnummer );

printf("Hoppnummer:\n");
scanf_s("%f", &hoppnummer);

printf("Svarighetsgrad:\n");
scanf_s("%f", &svarighetsgrad);

printf("Domarpoang 1:\n");
scanf_s("%f", &domarpoang1);

printf("Domarpoang 2:\n");
scanf_s("%f", &domarpoang2);

printf("Domarpoang 3:\n");
scanf_s("%f", &domarpoang3);

printf("Domarpoang 4:\n");
scanf_s("%f", &domarpoang4);

printf("Domarpoang 5:\n");
scanf_s("%f", &domarpoang5);

printf("Domarpoang 6:\n");
scanf_s("%f", &domarpoang6);

printf("Domarpoang 7:\n");
scanf_s("%f", &domarpoang7);
system("cls");
printf("Startnummer: %.1f \n", startnummer);
printf("Hoppnummer: %.1f\n", hoppnummer);
printf("Svarighetsgrad: %.1f\n", svarighetsgrad);
printf("Domarpoang 1: %.1f\n", domarpoang1);
printf("Domarpoang 2: %.1f\n", domarpoang2);
printf("Domarpoang 3: %.1f\n", domarpoang3);
printf("Domarpoang 4: %.1f\n", domarpoang4);
printf("Domarpoang 5: %.1f\n", domarpoang5);
printf("Domarpoang 6: %.1f\n", domarpoang6);
printf("Domarpoang 7: %.1f\n", domarpoang7);

printf("Hoppoang: \n");

printf("Tryck tangent for nytt hopp!");
getchar();
getchar();
return 0;
}

所以我想做的是让系统确定 domarpoang 1-7 的最大值和最小值,并将其保存到变量 max 和 min 中。我不知道该怎么做,因为输入被保存到不同的变量中,所以它如何检查每个变量的最大值和最小值。

谢谢

最佳答案

如果您创建一个 float 组并将它们循环传递给 scanf (我使用 scanf 因为我在 Linux 上,但您应该能够将原理应用于 scanf_s )。我将您的所有数据添加到一个结构中以使其整齐。

在循环中,您可以跟踪最小值和最大值。

抱歉,变量名称可能看起来很奇怪,因为我听不懂您的语言。

#include<stdio.h>
#include<stdlib.h>
#include <math.h>
#include <float.h>

struct mystruct
{
float startnummer;
float hoppnummer;
float svarighetsgrad;
float domarpoangs[7];
};

int main(void)
{
struct mystruct data;
float max = FLT_MIN;
float min = FLT_MAX;

printf("Startnummer: \n");
scanf("%f", &data.startnummer );

printf("Hoppnummer:\n");
scanf("%f", &data.hoppnummer);

printf("Svarighetsgrad:\n");
scanf("%f", &data.svarighetsgrad);


int i = 0;
for(i = 0; i < 7; i++)
{
printf("domarpoang %d\n", i+1);
float f;
if(scanf("%f", &f) == 1)
{
if (f < min) min = f;
if (f > max) max = f;
printf("read float %f\n", f);
printf("min=%f max=%f\n", min, max);

data.domarpoangs[i] = f;
} else
{
printf("error parsing float\n");
exit(0);
}

}

system("cls");
printf("Startnummer: %.1f \n", data.startnummer);
printf("Hoppnummer: %.1f\n", data.hoppnummer);
printf("Svarighetsgrad: %.1f\n", data.svarighetsgrad);
for(i = 0; i < 7; i++)
{
printf("Domarpoang %d: %.1f\n", (i+1), data.domarpoangs[i]);
}

printf("min=%f max=%f\n", min, max);

printf("Hoppoang: \n");

printf("Tryck tangent for nytt hopp!");
getchar();
getchar();
return 0;
}

关于c - 确定输入的最大值和最小值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28227425/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com