关于 如何引用与结构体有关的数组和指针变量,有以下几个代码可以表达怎么样将结构体与数组,指针变量结合在一起输入和输出。
结构体变量与数组元素的引用方法
#include <stdio.h>
#include <stdlib.h>
struct student
{
char name[11];
int s1,s2,s3;
double aver;
};
int main()
{
struct student a,b[10],*p;
int n;
scanf("%d",&n);
p=(struct student*)malloc(n*sizeof(struct student));
scanf("%s%d%d%d",a.name,&a.s1,&a.s2,&a.s3);
p=&a;
printf("%s %d %d %d\n",b[0].name,b[0].s1,b[0].s2,b[0].s3);
return 0;}
结构体指针变量定义
#include <stdio.h>
#include <stdlib.h>
struct student
{
char name[11];
int s1,s2,s3;
double aver;
};
int main()
{
struct student a,b[10],*p;
int ;
p=(struct student*)malloc(sizeof(struct student));
scanf("%s%d%d%d",a.name,&a.s1,&a.s2,&a.s3);
*p=a;
a.s1=a.s2=a.s3=100;//a的值变化不会改变p的值
printf("%s %d %d %d\n",(*p).name,(*p).s1,p->s2,p->s3);
printf("%s %d %d %d\n",a.name,a.s1,a.s2,a.s3);
return 0;
}