如何将嵌套的结构数组作为参数传递给函数?

AFY

我有一个名为 Class 和 Student 的结构。我想通过访问 Class 结构中的 Students[30] 数组来计算学生的平均成绩。

这是我的代码:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <Math.h>

typedef struct Student{
  char name [20] ;
  int grade ;
  int number ;
} Student;

typedef struct Class{
  char className[20] ;
  Student Students[30] ;
} Class;  

double calculateAverageGrade(/* I want to pass the Students[30] array here */ ) {
  int i ;
  int sum = 0 ;
  for(i=0;i<3;i++) {
  }
  return sum/3 ;
}   

int main() {
  Student s1 ={"John",75,758} ;
  Student s2 = {"Jack",85,123} ;
  Student s3 = {"Lisandra",50,321} ;
  Class c1 ={'\0'} ;

  strcpy(c1.className,"Physics") ;

  c1.Students[0] = s1 ;
  c1.Students[1] = s2 ;
  c1.Students[2] = s3 ;

  calculateAverageGrade(/*needs to take Students[30] array*/);
  return 0 ;
}        

我已经尝试过类似的东西Class Students[30]Class.Student Students[30]但它们没有用。

风向标

你可以像这样计算平均成绩,就像你的程序一样。请注意,我在函数调用中添加了学生人数,但Class无论如何您的类型确实应该包含该数量,并且最好将 a 传递Class给函数,而不仅仅是它包含的数组。

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

typedef struct Student{
    char name [20];
    int grade;
    int number;
}Student;

typedef struct Class{
    char className[20];
    Student Students[30];
}Class;  

double calculateAverageGrade(Student *Students, int count) {  // pass the number of students
    int i;
    int sum = 0;
    for(i = 0; i < count; i++) {                 // don't guess the number of students
        sum += Students[i].grade;
    }
    return (double)sum / count;                  // otherwise integer division
}   

int main(void) {
    Student s1 = { "John",     75, 758 };
    Student s2 = { "Jack",     85, 123 };
    Student s3 = { "Lisandra", 50, 321 };
    Class c1 = {'\0'};
    strcpy(c1.className, "Physics");
    c1.Students[0] = s1;
    c1.Students[1] = s2;
    c1.Students[2] = s3;
    printf("The average grade in %s is %.2f\n", c1.className,
            calculateAverageGrade(c1.Students, 3));
return 0;
}     

程序输出:

物理平均成绩为 70.00

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何将结构作为参数传递给函数?

来自分类Dev

将数组从结构作为参数传递给函数

来自分类Dev

将结构数组作为参数传递给函数

来自分类Dev

如何将结构作为参数传递给Java函数或如何从jni返回到Java

来自分类Dev

如何将结构作为参数传递给Java函数或如何从jni返回到Java

来自分类Dev

如何将任意lambda作为参数传递给函数(以获取命名层次结构)?

来自分类Dev

如何将函数作为参数传递给参数?

来自分类Dev

如何将函数作为参数传递给transform()函数?

来自分类Dev

如何将通道作为参数传递给函数?

来自分类Dev

Python:如何将列表作为参数传递给函数?

来自分类Dev

如何将参数作为函数传递给变量?

来自分类Dev

如何将向量作为函数参数传递给指针

来自分类Dev

如何将函数作为参数传递给OpenSCAD模块?

来自分类Dev

如何将元组作为参数传递给divmod()函数

来自分类Dev

如何将元组作为参数传递给divmod()函数

来自分类Dev

如何将模板作为参数传递给函数

来自分类Dev

如何将JSON数组作为参数传递给URL

来自分类Dev

如何将数组作为单独的参数传递给方法

来自分类Dev

如何将Swift数组作为参数传递给线程?

来自分类Dev

如何将数组或列表作为参数传递给PowerShell函数?

来自分类Dev

如何将数组作为参数传递给最大值函数?

来自分类Dev

如何将整个numpy数组作为python中的参数传递给用户定义的函数?

来自分类Dev

如何将常量数组作为参数传递给C ++函数/方法

来自分类Dev

如何将数组或列表作为参数传递给PowerShell函数?

来自分类Dev

如何将数组作为实际参数而不是全局变量传递给函数

来自分类Dev

如何将数组(未知长度)的所有元素作为单独的参数传递给函数?

来自分类Dev

如何将float数组和float作为参数传递给C中的函数

来自分类Dev

如何将数组作为参数传递给 Java 图形函数?

来自分类Dev

如何将结构数组的地址传递给函数?

Related 相关文章

  1. 1

    如何将结构作为参数传递给函数?

  2. 2

    将数组从结构作为参数传递给函数

  3. 3

    将结构数组作为参数传递给函数

  4. 4

    如何将结构作为参数传递给Java函数或如何从jni返回到Java

  5. 5

    如何将结构作为参数传递给Java函数或如何从jni返回到Java

  6. 6

    如何将任意lambda作为参数传递给函数(以获取命名层次结构)?

  7. 7

    如何将函数作为参数传递给参数?

  8. 8

    如何将函数作为参数传递给transform()函数?

  9. 9

    如何将通道作为参数传递给函数?

  10. 10

    Python:如何将列表作为参数传递给函数?

  11. 11

    如何将参数作为函数传递给变量?

  12. 12

    如何将向量作为函数参数传递给指针

  13. 13

    如何将函数作为参数传递给OpenSCAD模块?

  14. 14

    如何将元组作为参数传递给divmod()函数

  15. 15

    如何将元组作为参数传递给divmod()函数

  16. 16

    如何将模板作为参数传递给函数

  17. 17

    如何将JSON数组作为参数传递给URL

  18. 18

    如何将数组作为单独的参数传递给方法

  19. 19

    如何将Swift数组作为参数传递给线程?

  20. 20

    如何将数组或列表作为参数传递给PowerShell函数?

  21. 21

    如何将数组作为参数传递给最大值函数?

  22. 22

    如何将整个numpy数组作为python中的参数传递给用户定义的函数?

  23. 23

    如何将常量数组作为参数传递给C ++函数/方法

  24. 24

    如何将数组或列表作为参数传递给PowerShell函数?

  25. 25

    如何将数组作为实际参数而不是全局变量传递给函数

  26. 26

    如何将数组(未知长度)的所有元素作为单独的参数传递给函数?

  27. 27

    如何将float数组和float作为参数传递给C中的函数

  28. 28

    如何将数组作为参数传递给 Java 图形函数?

  29. 29

    如何将结构数组的地址传递给函数?

热门标签

归档