| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2314 人关注过本帖
标题:结构体变量怎么用
只看楼主 加入收藏
Karryu
Rank: 1
等 级:新手上路
帖 子:37
专家分:0
注 册:2016-5-5
结帖率:90%
收藏
已结贴  问题点数:20 回复次数:5 
结构体变量怎么用
#include <stdio.h>

struct student
{
    int num;
    char name;
    float score[3];
}stu[N];

int i;
int main()
{
   
    struct student stu[5];
    void print(struct student stu[5]);
    for(i=0;i<5;i++)
    {printf("请输入学号:\n");
     scanf("%d",stu[i].num);
     printf("请输入名字:\n");
     scanf("%s",stu[i].name);
     printf("请输入成绩:\n");
     scanf("%f %f %f",stu[i].score[0],stu[i].score[1],stu[i].score[2]);
    }
    print(stu);
    return 0;

}

void print(struct student stu[5])
{

    for(i=0;i<5;i++)
    {
    printf("%d\n%s\n%f %f %f\n",stu[i].num,stu[i].name,stu[i].score[0],stu[i].score[1],stu[i].score[2]);
    printf("\n");
    }

}


一用到结构体变量运行的时候就会出现assess violation 到底是哪里出错了?
搜索更多相关主题的帖子: include return 结构体 
2016-06-02 22:08
qq1023569223
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:湖南科技大学
等 级:贵宾
威 望:26
帖 子:2753
专家分:13404
注 册:2010-12-22
收藏
得分:10 
程序代码:
#include <stdio.h>

struct student
{
    int num;
    char name[30];  //
    float score[3];
};

void print(struct student stu[]);

int main()
{
    int i;
    struct student stu[5];
        
    for(i=0;i<5;i++)
    {
        printf("请输入学号:\n");
        scanf("%d",stu[i].num);
        printf("请输入名字:\n");
        scanf("%s",stu[i].name);
        printf("请输入成绩:\n");
        scanf("%f %f %f",stu[i].score[0],stu[i].score[1],stu[i].score[2]);
    } 
    
    print(stu);
    return 0;
}

void print(struct student stu[])
{
    for(i=0;i<5;i++)
    {
        printf("%d\n%s\n%f %f %f\n",stu[i].num,stu[i].name,stu[i].score[0],stu[i].score[1],stu[i].score[2]);
        printf("\n");
    }
}

   唯实惟新 至诚致志
2016-06-03 08:17
wanglianyi1
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:14
帖 子:647
专家分:2067
注 册:2015-6-18
收藏
得分:10 
回复 2楼 qq1023569223
最后输出函数的i没定义吧?
还有录入学生信息的时候除了姓名,其他属性如学号,成绩都需要加&吧
程序代码:
#include <stdio.h>

struct student
{
    int num;
    char name[30];  
    float score[3];
};

void print(struct student stu[]);

int main()
{
    int i;
    struct student stu[5];
        
    for(i=0;i<5;i++)
    {
        printf("请输入学号:\n");
        scanf("%d",&stu[i].num);        //这里
        printf("请输入名字:\n");
        scanf("%s",stu[i].name);
        printf("请输入成绩:\n");
        scanf("%f %f %f",&stu[i].score[0],&stu[i].score[1],&stu[i].score[2]);        //这里
    } 
    
    print(stu);
    return 0;
}

void print(struct student stu[])
{
    int i;                            //这里
    for(i=0;i<5;i++)
    {
        printf("%d\n%s\n%f %f %f\n",stu[i].num,stu[i].name,stu[i].score[0],stu[i].score[1],stu[i].score[2]);
        printf("\n");
    }
}


[此贴子已经被作者于2016-6-3 08:47编辑过]

2016-06-03 08:43
qq1023569223
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:湖南科技大学
等 级:贵宾
威 望:26
帖 子:2753
专家分:13404
注 册:2010-12-22
收藏
得分:0 
回复 3楼 wanglianyi1
是啊,没看清。

   唯实惟新 至诚致志
2016-06-03 09:32
wanglianyi1
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:14
帖 子:647
专家分:2067
注 册:2015-6-18
收藏
得分:0 
回复 4楼 qq1023569223
2016-06-03 10:43
Karryu
Rank: 1
等 级:新手上路
帖 子:37
专家分:0
注 册:2016-5-5
收藏
得分:0 
谢谢了
2016-06-17 20:53
快速回复:结构体变量怎么用
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016905 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved