gpt4 book ai didi

c - 如何分配要存储到数组中的用户输入

转载 作者:行者123 更新时间:2023-11-30 19:50:19 25 4
gpt4 key购买 nike

我的挑战是编写一个程序,将用户的 GPA 作为浮点值存储在数组中。用户最多可以输入 30 个 GPA,并在输入每个值后根据需要显示平均值。我感到困惑的是如何在循环中使用 scanf() 函数将浮点值存储在数组中。谁能用示例代码解释一下吗?

好的,这就是我开始的代码。我知道这是假的,但我希望每个人都能更好地了解我正在编写的程序。我希望用户输入他们有多少 GPA。他们输入的数字将是我将拥有的数组的数量。

#include <stdio.h>
main()
{
int loopcount = 0;
int NumGpa = 0;
NumGpa = 0 - 1;
float = 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25;
int gpa[NumGpa] ={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25};
int i = 0;
int total =0;

printf("\t\tWelcome to the GPA calculator.\n ");
printf("Please enter the number of classes you have counted for you GPA: ");
scanf("%d", &NumGpa);

while (loopcount &lt; NumGpa)
{
printf("\nenter your first GPA: ");
scanf("%d", &1); //??????????????(i want loops to use scanf() if order &2,&3 ect?

for (i=0; i&lt;gpa; i++)
{
total += arbin[NumGpa];
}

printf(" you average gpa is %d", NumGpa / ????);
getchar();
}
}

最佳答案

当您使用 scanf 读取 float 时,您会传递相关 float 的地址。您可以使用取址运算符 (&) 来获取数组中项目的地址,其方式与获取其他内容的方式大致相同。

或者,您可以稍微简化一下事情。在C中,下标运算符([])相当于指针操作。特别是,a[b] 相当于*(a+b)。但是, &* 几乎完全相反,因此在这种情况下它们最终会相互抵消。因此,如果您愿意,可以只使用 a+b,其中一个是数组的名称,另一个是要读取的数组中项目的索引。

关于c - 如何分配要存储到数组中的用户输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4999827/

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