C语言中如何用多维数组实现输入一个班30名学生的姓名,学号和5门成绩?

如题所述

#include "stdio.h"
#define N 100
void main()
{
char stu_name[N][20]={""};
char stu_id[N][10]={""};
float stu_score[N][5]={0.0};
int stu_num=0;
int i,j;
printf("Please input the number of class:n=");
scanf("%d",&stu_num);
printf("Please input student's information:\n");
for(i=0;i<stu_num;i++)
{
printf("请输入第%d位学生信息:\n",i+1);
printf("Please input Name:");
getchar();
gets(stu_name[i]);
printf("Please input ID:");
getchar();
gets(stu_id[i]);
for(j=0;j<5;j++)
{

printf("请输入第%d门成绩:",j+1);
scanf("%f",&stu_score[i][j]);
}
}
}追问

char stu_name[N][20]={""};
char stu_id[N][10]={""};
float stu_score[N][5]={0.0};
int stu_num=0;
兄弟,你这些:{""}; {""}; {0.0}; =0;是干嘛用的,没有也得吧????????

追答

这此用于初始化的。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-04-20
不能直接用数组吧,因为数组里的元素类型是相同的,姓名是char,学号是int,成绩是int.
应该定义一个类吧!
struct student{
char name[20];
int num[10];//学号
int score[5];//五门成绩
}追问

大哥按你说的,是不是要用到结构体方面的知识啊!!!我是初学者诶,还没学到结构体呢!
该咋办啊!有没有其他的办法?要初学不久就能看懂的!谢了哈!

追答

是啊,要用结构体那得知识!挺简单的,结构体就是用户根据实际需要自定义的一种数据类型,将某一种事物的所有属性封装起来,有利于程序的结构性!你可以把这种数据类型就理解成字符型、浮点型之类的,它是用户自定义的!

追问

该咋办啊!有没有其他的办法?要初学不久就能看懂的!谢了哈!

本回答被提问者采纳
第2个回答  2012-04-20
用结构体数组
struct stu
{
char order[30+1];
char name[20];
char num[10];
float grades[5+1];
}student[30];
相似回答