C程序为男孩或女孩寻找学生的分数

假设我们有一个称为marks的数组,其中给出了一些标记,所有偶数索引标记(如marks[0]、marks[2]等)都是男孩的标记,所有偶数索引的标记都是女孩的标记。我们还有另一个输入,称为性别。性别的值是'b'或'g',当它是'b'时我们必须返回所有男孩的总和,当它是'g'时返回所有女孩的总和。(数组大小为 N)

因此,如果输入像 N = 9 标记 = [8,5,2,6,7,5,9,9,7] 性别 = 'g',那么输出将是 25,因为 5 + 6 + 5 + 9 = 25。

示例

让我们看看以下实现以获得更好的理解 -

#include <stdio.h>
#define N 9
int solve(int marks[], int n, char gender){
    int g_sum = 0;
    int b_sum = 0;
    for(int i = 0; i < n; i++){
        if(i % 2 != 0){
            g_sum += marks[i];
        }else{
            b_sum += marks[i];
        }    
    }
    if(gender == 'b')
        return b_sum;
    return g_sum;
}
int main(){
    int marks[N] = {8,5,2,6,7,5,9,9,7};
    char gender = 'g';
   
    int sum = solve(marks, N, gender);
    printf("%d", sum);
}

输入

{8,5,2,6,7,5,9,9,7}, 'g'
输出结果
25