本帖最后由 TTsu 于 2015-9-6 23:35 编辑
/*
遍历班级所有同学的序号.姓名.身高信息
*/
#include <stdio.h>
int main(){
struct Student {
int no;
char name[20];
float height;
};
int num;
printf("请问要输入的人数是:?\n");
scanf("%d",&num);
struct Student stu[num];//此处的结论是结构体数组的[]里数值也想数组一样可以用户自定义
struct Student *p;
p = stu;
for (int i = 0; i<num; i++) {
printf("请输入学生序号\n");
scanf("%d",&stu.no);
printf("请输入学生姓名\n");
scanf("%s",&stu.name);
printf("请输入学生身高\n");
scanf("%f",&stu.height);
}
printf("姓名----年龄----身高\n");
for (int j = 0; j<num;j++, p++) {
printf("%d\t%s\t%.2f\t\n",p->no,p->name,p->height);
}
return 0;
}
总结:
struct Student stu[num];//此处的结论是结构体数组的[]里数值也想数组一样可以用户自定义
p->no=stu[0].no; p++以后 p->no应该是向stu[1].no取值了,所以这样就以为这同样可以通过for循环遍历结构体数组的各项数值.
打印出的 for (int j = 0; j<num;j++, p++)这段for循环写的非常不满意,但是达到目的,不知道怎么修改
|