c程序问题,假设有A、B、C、D、E五个高等院校进行田径对抗赛, 各院校的单项成绩均以存入计算机并构成一张

发布时间:2019-09-13 21:32:12

c程序问题,假设有A、B、C、D、E五个高等院校进行田径对抗赛, 各院校的单项成绩均以存入计算机并构成一张

推荐回答

我找到了三项比较明显的错误:第一处:主函数中ScoreType score[100];定义后应该将其中所有元素初始化为0,不然调用Scores()时得不到预期的结果。第二处:typedef struct { char sport; // 项目名称 Sex gender; // 性别(女:female;男:male) char schoolname; // 校名为'A','B','C','D'或'E' char *result; // 成绩 最好定义为数组result[20] int score; // 得分(7,5,4,3,2或1) }ResultType;第三处(致命错误!):for(i=0;i<n;++i) { printf("运动员%d:",i+1); scanf("%s%d%s%s%d",result[i].sport,result[i].gender, result[i].schoolname,result[i].result,result[i].score);//scanf()语句应该用用地址 }在修改了第二结构体ResultTy的前提下改成下面的语句为妙:for(i=0;i<n;++i) { printf("运动员%d:",i+1); fflush(stdin); printf("输入项目:"); scanf("%c",&result[i].sport); fflush(stdin); printf("输入性别:"); scanf("%d",&result[i].gender); fflush(stdin); printf("输入校名:"); scanf("%c",&result[i].schoolname); fflush(stdin); printf("输入结果:"); scanf("%s",result[i].result); fflush(stdin); printf("输入分数:"); scanf("%d",&result[i].score); }第二个不晓得题目要求解释枚举型的什么东东,能再清楚点就好了。female相当于常量0,male相当于1吧。
以上问题属网友观点,不代表本站立场,仅供参考!