问题遇到的现象和发生背景
使用typedef 重命名了一个数据结构,在使用自定义void函数的时候,传入该类型参数;结果显示编译认不出 这个重命名 的东西。
问题相关代码,请勿粘贴截图
问题就在_void finpu(STU student[]) { //输入模块,将三个数据结构填入相应的数值_这里
//信息管理系统,增删改查;包含学生的学号,姓名,性别,C语言,数学以及英语成绩
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define num 3
void finpu(STU student[]) { //输入模块,将三个数据结构填入相应的数值
for(int i=0; i<num; i++) {
printf("please input the basenum of the student%d:\n",i+1);
gets(basenum);
getchar();
printf("input the name of the student%d",i+1);
gets(name);
printf("please input the gender of the student!attetion:male for M,female for F!\n") ;
getchar(student[i])
getchar();
printf("input the score of the student%d,including clanguage,math,english!\n(deparate those scores by '')",i+i);
scanf("%d %d %d",&student[i].clanguage,&student[i].math,&student[i].english);
}
}
void search(STU student[]) {//搜索模块,将数据搜索并且输入
char *ser;
printf("please input the basic number of the student:\n");
gets(ser);
for(int i=0; i<num; i++) {
if(!strcmp(ser,student[i].basenum) {
printf("base information of this student show as below:\n");
printf("name-->%s\n",student[i].name);
printf("gender-->%c\n",student[i]->gender);
printf("%c \t%c \t%c \t",student[i].clanguage,student[i].math,student[i].english);
break;
} else {
printf("查无此人,请输入正确的学号!\n");
}
}
}
int main(void) {
typedef struct stu {
char basenum[10];
char name[10];
char gender;
char clanguage,math,english;
} STU;
STU student[num];
finpu(STU student);
}
运行结果及报错内容
error: variable of field 'finpu' declared void
error: 'STU' was not declared in this scope
我的解答思路和尝试过的方法
改“STU”这个名称,结果没卵用
我想要达到的结果