C语言中void返回类型问题,急死了,速度来回答啊!!!

来源:百度知道 编辑:UC知道 时间:2024/06/17 07:25:18
源代码如下:
问题描述:编译后提示一长串错误,说void类型的错误使用什么的,我就是不知道错在哪里了啊!!
#include <stdio.h>
#define N 10

//学生结构体
typedef struct stu
{
int num;
char *name;
char sex;
int age;
float score;
}stu;

//男女生人数统计
void p_number(stu s[])
{
int f_num=0,m_num=0;
int i;
for(i=0;i<N;i++)
if(s[i].sex=='F')
f_num++;
else
m_num++;
printf("男生人数: %d\n女生人数: %d\n",m_num,f_num);
}

//平均年龄
void ave_age(stu s[])
{
int i,sum=0;
for(i=0;i<N;i++)
sum+=s[i].age;
printf("平均年龄为: %d\n",sum/N);
}

//平均成绩
void ave_score(stu s[])
{
int i;
float sum=0;
for(i=0;i<N;i++)
sum+=s[i].score;
printf("平均成绩为: %.1f\n",sum/N);
}

int main()
{

stu s[N];
int i;
printf("请输入学生数据(依次输入学号/姓名/

最后三行
void p_number(s);
void ave_age(s);
void ave_score(s);
调用函数的时候不用加函数类型void

void p_number(s);
void ave_age(s);
void ave_score(s);
改成
p_number(s);
ave_age(s);
ave_score(s);

调用函数不需要写出函数返回值类型。
只有函数声明的时候才需要写出函数返回值类型。

把最后3行的3个void删掉
程序如下
#include <stdio.h>
#define N 10

//学生结构体
typedef struct stu
{
int num;
char *name;
char sex;
int age;
float score;
}stu;

//男女生人数统计
void p_number(stu s[])
{
int f_num=0,m_num=0;
int i;
for(i=0;i<N;i++)
if(s[i].sex=='F')
f_num++;
else
m_num++;
printf("男生人数: %d\n女生人数: %d\n",m_num,f_num);
}

//平均年龄
void ave_age(stu s[])
{
int i,sum=0;
for(i=0;i<N;i++)
sum+=s[i].age;
printf("平均年龄为: %d\n",sum/N);
}

//平均成绩
void ave_score(stu s[])
{