问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

结构体成员变量在内存中是连续存放的吗3

发布网友 发布时间:2023-09-20 23:45

我来回答

5个回答

热心网友 时间:2024-06-09 11:04

像这么加不对哦,每次进入循环,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;
}

热心网友 时间:2024-06-09 11:04

根据对齐方式,为1时连续,为2时,如果成员都大于等于2,就能连续小于2,就不连续

热心网友 时间:2024-06-09 11:05

默认是32位对齐的,就是不管你是一个字节变量还是2个字节变量都占4字节。想要连续要用单字节对齐伪指令

热心网友 时间:2024-06-09 11:05

不一定。
定义结构体数组:
struct s
{
int b;
int x,y;
char *p;
int a[10];
}s1[]={2,1,3,"abc",{9,8,7,6}},s2[12];
或者:
struct s s1[10]; //结构类的数组定义。

热心网友 时间:2024-06-09 11:06

一个结构体中各个成员是连续的,一个结构体和另一个结构体又是想连续的
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
...的话有啥影响,怎么听说对六年后换证有影响? ...重新刷学时吗,科一科二科三科四可以转校吗? 考完科一科二科三科四要多久 ...但是科目三的学时没有打满对以后有没有影响? 我的学时卡没有打过,一点都没有,不过我科一科二科三科四都全部考完了... 五行穿搭2021年10月8日五行属什么怎么穿衣 十月八日上到十月几日 ipadmini和iphone6是充电器不一样、还是数据线不一样呢?可以互相使用充 ... iphone6的插头可以通用ipad mini 吗 iphone6和ipad mini的充电器可以通用吗 淘宝收藏的宝贝能查是什么时候收藏的吗 现在腾讯注册一个QQ群,需要真实名字和身份证验证的吗。12 劲炫ASX2020款5座落地价是多少钱?劲炫ASX裸车价 醉中圣名酒拍卖店是正品吗 北京墓地价格表,北京墓地价格多少钱?10 电脑里的GIF图不动21 qq钱包AA收款在哪里 qq钱包AA收款怎么用 qq钱包立即处理在哪里打开 C++ 中的 enum 结构在内存中是怎么存储的1 眉山中铁印象时光城售楼热线是多少? 合肥赛优网络科技有限公司怎么样? 建qq群需要输入手机号码时我填了自己的手机号码,请问会不会泄...2 手机QQ建群要填写姓名和身份证号码吗? 文学的分类103 行事不张扬什么意思? 行为举止不张扬什么意思?不张扬什么意思?1 不张扬什么意思? 怎样才能回到20岁那年? 信用卡申请失败的原因是什么 电脑刚换的接线和机箱,接通电源开机没反应,是不是接错了 淘宝收藏宝贝的时间怎么看?1 请问在结构体中 有各种不同类型的变量 它们在内存中的物理存储...2 淘宝卖家能够知道谁收藏了我的宝贝吗5 行为举止不张扬?什么意思?不要跟我说是低调 360桌面助手怎么卸载?360桌面助手卸载图文教程 请问qq钱包进行实名认证了能转账吗? 十三陵周边的墓地有哪些?4 十三陵附近有什么公墓?1 北京的陵园价格多少钱?怎么定的? 眼前看到这台空调外机,是下面一商家强制挂上去,这种问题应该找谁处理... 有两桶油,甲桶油的质量是乙桶油的质量的5倍。如果从甲桶油倒24千克给... 谭奥斯这个名字怎么样? 野生动物园大亨2的介绍 如果可以回到20岁,你想回到哪一年? 欧东那格的传说告诉我们什么道理 做事不张扬,就是不要引起别人的注意吗? AI中画了一个圆角矩形,可是只想有两个角是圆角的,剩下两个都... 如何进行数据库的设计?35 有两桶油,甲桶油的重量是乙桶油重量的5倍,如果把甲桶油倒24千克给乙桶... 求以城市的颜色为主题800字记叙文