定义了一个结构体数组并且尝试为结构体数组赋值,然出了问题
#include <stdio.h>int main()
{ int i=0;
printf("输入几个学生的成绩");
scanf("%d",&i);
struct Student
{
char sno;
char sname;
char sex;
char address;
};
struct Student students;
for(int j=0;j<i;j++)
{
printf("第%d个学生的学号为:",j+1);
scanf("%s",&students.sno);
printf("第%d个学生的姓名为:",j+1);
scanf("%s",&students.sname);
printf("第%d个学生的性别为:",j+1);
scanf("%s",&students.sex);
printf("第%d个学生的家庭住址为:",j+1);
scanf("%s",&students.address);
}
for(int j=0;j<i;j++)
{
printf("第%d个学生的学号为:%s",j+1,students.sno);
printf("第%d个学生的姓名为:%s",j+1,students.sname);
printf("第%d个学生的性别为:%s",j+1,students.sex);
printf("第%d个学生的家庭住址为:%s",j+1,students.address);
}
}
请问:为什么我无法为结构体数组中的元素赋值,我到底该怎么样才能赋值,求指点 赋值循环&students[]的变量是j啊 抱歉,我刚刚运行程序发现了,抱歉 #include <stdio.h>
int main()
{ int i=0;
printf("输入几个学生的成绩");
scanf("%d",&i);
struct Student
{
char sno;
char sname;
char sex;
char address;
};
struct Student students;
for(int j=0;j<i;j++)
{
printf("第%d个学生的学号为:",j+1);
scanf("%s",&students.sno);
printf("第%d个学生的姓名为:",j+1);
scanf("%s",&students.sname);
printf("第%d个学生的性别为:",j+1);
scanf("%s",&students.sex);
printf("第%d个学生的家庭住址为:",j+1);
scanf("%s",&students.address);
}
for(int j=0;j<i;j++)
{
printf("第%d个学生的学号为:%s",j+1,students.sno);
printf("第%d个学生的姓名为:%s",j+1,students.sname);
printf("第%d个学生的性别为:%s",j+1,students.sex);
printf("第%d个学生的家庭住址为:%s",j+1,students.address);
}
} #include <stdio.h>
int main()
{ int i=0;
printf("xiang输入几个学生的成绩");
scanf("%d",&i);
struct Student
{
char sno;
char sname;
char sex;
char address;
};
struct Student students;
for(int j=0;j<i;j++)
{
printf("第%d个学生的学号为:",j+1);
scanf("%s",students.sno);
printf("第%d个学生的姓名为:",j+1);
scanf("%s",students.sname);
printf("第%d个学生的性别为:",j+1);
scanf("%s",students.sex);
printf("第%d个学生的家庭住址为:",j+1);
scanf("%s",students.address);
}
for(int j=0;j<i;j++)
{
printf("第%d个学生的学号为:%s",j+1,students.sno);
printf("第%d个学生的姓名为:%s",j+1,students.sname);
printf("第%d个学生的性别为:%s",j+1,students.sex);
printf("第%d个学生的家庭住址为:%s",j+1,students.address);
}
}
#include <stdio.h>
int main()
{ int i=0;
printf("xiang输入几个学生的成绩");
scanf("%d",&i);
struct Student
{
char sno;
char sname;
char sex;
char address;
};
struct Student students;
for(int j=0;j<i;j++)
{
printf("第%d个学生的学号为:",j+1);
scanf("%s",&students.sno);
printf("第%d个学生的姓名为:",j+1);
scanf("%s",&students.sname);
printf("第%d个学生的性别为:",j+1);
scanf("%s",&students.sex);
printf("第%d个学生的家庭住址为:",j+1);
scanf("%s",&students.address);
}
for(int j=0;j<i;j++)
{
printf("第%d个学生的学号为:%s",j+1,students.sno);
printf("第%d个学生的姓名为:%s",j+1,students.sname);
printf("第%d个学生的性别为:%s",j+1,students.sex);
printf("第%d个学生的家庭住址为:%s",j+1,students.address);
}
}
二者都可以说明student[]==&student[]
页:
[1]