① c语言 结构体及其应用
#include <stdio.h>
#include <stdlib.h>
typedef struct strStudent{
int stuID;
int score;
char stuName[20];
};
int main (void)
{
strStudent stu;
scanf("%d",&stu.stuID);
scanf("%d",&stu.score);
scanf("%d",stu.stuName);
printf("%d\t%d\t%s\n",stu.stuID,stu.score,stu.stuName);
return 0;
}
第二个 你自己修改一下
② C语言结构体应用
void
struct_parameter(example_1
*sp)
{
//sp=array;//这一句错误,直接删掉,下面三句可以完成赋值
sp->a=array[0];
sp->b=array[1];
sp->c=array[2];
printf("%d\n",sp->a);
printf("%d\n",sp->b);
printf("%d\n",sp->c);
};
int
main()
{
example_1
*sp;
example_1
fp_sp;
struct_parameter(&fp_sp);
//struct_parameter(sp);//这一句错误,sp还没有初始化
}
③ c语言结构体的应用
输入时候的错误:
scanf("%s",p->name);//name是数组名,本身代表的就是数组的起始地址
scanf("%d",&((p->birthday).year));
还有其他几处错误与上面的类似,你一一查看改正。
输出时候的错误与此类似。
④ c语言结构体定义和使用是什么
c语言结构体是类似于名片形式的数据集合体,可以把它理解为一种由用户自定义的特殊的复合型的“数据类型”,在这个复合型的“数据类型”中可以包含多种基本数据类型,我们可以把它作为一个整体来操作。
c语言使用:结构体数组的引用与引用一个结构体变量在原理上是一样的。只不过结构体数组中有多个结构体变量,我们只需利用 for 循 环一个一个地使用结构体数组中的元素。
结构体的意义
结构体描述了一段内存的解释意义。
在内存中,数据的意义在于如何使用此段数据,如在内存中存有一个数据3,如果只把他当作正整数来使用,那么其意义为正整数3,如果把内存中的3,当作2的3次方来使用,那么3的意义则为指数3。而一个结构体则描述了一段内存中的数据的使用意义。
⑤ C语言中,关于结构体的应用。
像这么加不对哦,每次进入循环,stu[N].a就被清零一次,以前加的和都没有了。。。
for(i=0;i<N;i++)
{
stu[N].a=0;
stu[N].a+=stu[i].a;
}
像这样,在初始化的时候清零就可以了:
for(i=0,stu[N].a=0;i<N;i++)
{
stu[N].a+=stu[i].a;
}
还有这一句:
scanf("%d%s%d%d%d",&stu[i].num,&stu[i].name,&stu[i].a,&stu[i].b,&stu[i].c);
name是字符数组,name已经是数组的头地址了,就不用取地址符了。应该是这么写
scanf("%d%s%d%d%d",&stu[i].num,stu[i].name,&stu[i].a,&stu[i].b,&stu[i].c);
至于楼主要的求和函数。楼主这结构体只能这么写了。。。
int Sum(int mod)
{
int sum=0;
if(mod==1)
for(i=0,stu[N].a=0;i<N;i++)
sum+=stu[i].a;
else if(mod==2)
for(i=0,stu[N].a=0;i<N;i++)
sum+=stu[i].b;
else
for(i=0,stu[N].a=0;i<N;i++)
sum+=stu[i].c;
return sum;
}
这么用
printf("a课程总平均成绩为%d分",Sum(1)/N);
printf("b课程总平均成绩为%d分",Sum(2)/N);
printf("c课程总平均成绩为%d分",Sum(3)/N);
如果楼主的结构体这么定义:
struct student
{
int num;
char name[20];
int score[3];
int sum;
}stu[N+1];
就好写多了
int Sum(int mod)
{
int sum=0;
for(i=0,stu[N].a=0;i<N;i++)
sum+=stu[i].score[mod];
return sum;
}
⑥ 请问下C语言中的结构体有什么用
结构体作用:
结构体和其他类型基础数据类型一样,只不过结构体可以做成你想要的数据类型。
在实际项目中,结构体是大量存在的,研发人员常使用结构体来封装一些属性来组成新的类型,结构体在函数中最主要的作用就是封装,封装的便利是可以再次利用,再次使用的时候只要根据定义使用就可以,结构体可以定义一些复杂数据类型,有了结构体给编程带来很大的方便。