gpt4 book ai didi

c - 2 个关于 typedef 结构和平均成绩的问题。我在 C 中做得正确吗?

转载 作者:太空宇宙 更新时间:2023-11-04 04:02:15 25 4
gpt4 key购买 nike

我需要两个问题的帮助,这不是家庭作业,而是为了考试而学习。我需要有这些问题,因为我被允许做一整页的考试笔记。如果你能帮我解决这两个简单的问题,那就太好了。以下是问题:

  1. “编写一个名为 getGrades 的函数。该函数反复提示用户输入正整数,直到用户输入负值停止。该函数应返回这些成绩的平均值和最高成绩。”

  2. “编写一个名为 Get_Info 的函数,它接受一个指向学生结构的指针(具有三个字段:名为 name 的字符数组、一个 int id 和一个双 gpa)作为其唯一参数。该函数提示用户需要的信息来填充结构并将其存储在适当的字段中。”

到目前为止,让我知道它们是否正确以及是否需要添加任何内容。

1.

double getGrades() {
double average;
double i;
For(i=1 ; i<i; i++)
{
printf("Enter Grade1:\n");
scanf("%lf", &i);
}
if (i<0)
{

(double) average == (grade1 + grade2 + grade3) / 3;
return average;
}
}

2.

typedef struct {
int id;
double gpa;
char name[SIZE];
} student;

void Get_Info(student list[], int num) {
int i;
for(i=0; i<num; i++) {
printf("\nName:%s", list[i].name);
printf("\nGPA:%lf", list[i].gpa);
printf("\nID: %d\n", list[i].id);
}
}

最佳答案

关于 #1:要求函数接受 int秒。您正在扫描 double

要求是“该函数应返回这些成绩的平均值和最高成绩。”当需要两个不同的输出时,您只返回一个 double。

你的for循环写成“For”(C是区分大小写的),并且是基于测试i<i .我什么时候会比自己小??

这是我的版本。

double getGrades(int* max)
{
int sum = 0;
int input;
int i = 0;
*max = 0;

printf("Enter Grade #%d:\n", i+1);
scanf("%d", &input);

while (input > 0) {
if (*max < input) {
*max = input;
}

sum = sum + input;
i++;

printf("Enter Grade #%d:\n", i+1);
scanf("%d", &input);
}

return i? ((double)sum / i) : 0;
}

关于c - 2 个关于 typedef 结构和平均成绩的问题。我在 C 中做得正确吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10369434/

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