鱼C论坛

 找回密码
 立即注册
查看: 614|回复: 7

[已解决]结构体数组

[复制链接]
发表于 2023-12-15 14:38:39 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
#include<stdio.h>
int main(int argc,char *argv[])
{
        struct dangan{
                int a;
                char b[100];
                char c[100];
                char d[100];
                int e;
        };
        struct dangan xinx[2]={
                {001,"连笑","职业","九段",8900},
                {002,"柯洁","职业","九段",9422}
        };
        int i=0;
        for(i=0;i<2;i++){
                printf("%d %s %s %s %d\n",&xinx[i].a,&xinx[i].b,&xinx[i].c,&xinx[i].d,&xinx[i].e);
    }
    return 0;
}   
为什么输出是:
6486944 连笑 职业 九段 6487248
6487252 柯洁 职业 九段 6487556
最佳答案
2023-12-15 14:39:03
您好!首先,您在定义结构体数组时需要注意几个问题。以下是您的代码进行修改后的示例:
#include <stdio.h>struct dangan {    int a;    char b[20];  // 使用字符数组存储字符串    char c[20];    char d[20];    int e;};int main(int argc, char *argv[]) {    struct dangan xinx[2] = {  // 定义一个包含两个元素的结构体数组        { 001, "连笑", "职业", "九段", 8900 },        { 002, "柯洁", "职业", "九段", 9422 }    };    int i;    for (i = 0; i < 2; i++) {        printf("编号:%d\n", xinx[i].a);        printf("姓名:%s\n", xinx[i].b);        printf("职业:%s\n", xinx[i].c);        printf("段位:%s\n", xinx[i].d);        printf("积分:%d\n", xinx[i].e);        printf("\n");    }    return 0;}
在上面的代码中,我对结构体中的姓名、职业和段位使用了字符数组来存储字符串。在输出时使用`printf()`函数进行格式化输出。

希望能帮到您!有任何问题,请随时向我提问。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-12-15 14:39:03 | 显示全部楼层    本楼为最佳答案   
您好!首先,您在定义结构体数组时需要注意几个问题。以下是您的代码进行修改后的示例:
#include <stdio.h>struct dangan {    int a;    char b[20];  // 使用字符数组存储字符串    char c[20];    char d[20];    int e;};int main(int argc, char *argv[]) {    struct dangan xinx[2] = {  // 定义一个包含两个元素的结构体数组        { 001, "连笑", "职业", "九段", 8900 },        { 002, "柯洁", "职业", "九段", 9422 }    };    int i;    for (i = 0; i < 2; i++) {        printf("编号:%d\n", xinx[i].a);        printf("姓名:%s\n", xinx[i].b);        printf("职业:%s\n", xinx[i].c);        printf("段位:%s\n", xinx[i].d);        printf("积分:%d\n", xinx[i].e);        printf("\n");    }    return 0;}
在上面的代码中,我对结构体中的姓名、职业和段位使用了字符数组来存储字符串。在输出时使用`printf()`函数进行格式化输出。

希望能帮到您!有任何问题,请随时向我提问。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-12-15 14:39:50 | 显示全部楼层
FishC 发表于 2023-12-15 14:39
您好!首先,您在定义结构体数组时需要注意几个问题。以下是您的代码进行修改后的示例:

帮我看下我的代码哪里出问题了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-12-15 14:39:57 | 显示全部楼层
-kasha 发表于 2023-12-15 14:39
帮我看下我的代码哪里出问题了

当然,请您提供您的代码,我来帮您找出问题所在。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-12-15 14:40:40 | 显示全部楼层
FishC 发表于 2023-12-15 14:39
当然,请您提供您的代码,我来帮您找出问题所在。

以上回复来自 FishC AI 小助理,如未能正确解答您的 ...


【求助帖】请及时确认最佳答案,下次提问时可以得到更多关注,问题可以更快解决
#include<stdio.h>
int main(int argc,char *argv[])
{
        struct dangan{
                int a;
                char b[100];
                char c[100];
                char d[100];
                int e;
        };
        struct dangan xinx[2]={
                {001,"连笑","职业","九段",8900},
                {002,"柯洁","职业","九段",9422}
        };
        int i=0;
        for(i=0;i<2;i++){
                printf("%d %s %s %s %d\n",&xinx[i].a,&xinx[i].b,&xinx[i].c,&xinx[i].d,&xinx[i].e);
    }
    return 0;
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-12-15 14:40:48 | 显示全部楼层
-kasha 发表于 2023-12-15 14:40
【求助帖】请及时确认最佳答案,下次提问时可以得到更 ...

非常抱歉,您的代码未完整展示,请提供完整的代码让我帮您分析问题所在。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-12-15 14:43:12 | 显示全部楼层
不好意思 ,我刚刚看到我用取地址符号,我已经知道了!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-12-15 14:43:21 | 显示全部楼层
-kasha 发表于 2023-12-15 14:43
不好意思 ,我刚刚看到我用取地址符号,我已经知道了 ...

非常好,没问题!如果您发现自己的错误并找到解决方法,那就太棒了。如果您有任何其他问题,请随时向我提问。我很乐意为您提供帮助。祝您编程愉快!

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-7-9 03:45

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表