| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 674 人关注过本帖
标题:求助:结构体,struct
只看楼主 加入收藏
linxinqiang
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2010-10-25
结帖率:66.67%
收藏
已结贴  问题点数:10 回复次数:5 
求助:结构体,struct
#include<stdio.h>
struct student
{
    int no;
    char name[30];
    char sex;
    int score[3];
    int sum;
    float average;
};
main()
{
  struct student stu1;
  int i;
  stu1.sum=0;
  printf("\t\t\t请输入学号:");
  scanf("%d",&stu1.no);
  printf("\t\t\t请输入名字:");
  scanf("%s",&stu1.name);
  printf("\t\t\t请输入性别:");
  scanf("%s",&stu1.sex);
  printf("\t\t\t请输入三课分数:");
  for(i=0;i<3;i++)
  {
      scanf("%d",&stu1.score[i]);
      stu1.sum=stu1.score[i]+stu1.sum;
  }
  stu1.average=stu1.sum/3.0;
  printf("no:%d,name:%s,sex:%s,sum:%d,average:%f",stu1.no,stu1.name,stu1.sex,stu1.sum,stu1.average);
}
当输入数组时,内存出错

[ 本帖最后由 linxinqiang 于 2010-11-20 20:23 编辑 ]
搜索更多相关主题的帖子: struct 结构体 
2010-11-20 20:19
御坂美琴
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:魔術の禁書目錄
等 级:小飞侠
威 望:9
帖 子:952
专家分:2929
注 册:2010-8-18
收藏
得分:5 
scanf("%s",&stu1.sex); 错在这里

永远为正义而奋斗,锄强扶弱的Level 5 超能力者
とある魔術の禁書目錄インデックス__御み坂さか美み琴こと
http://bbs.bccn.net/space.php?action=threads&uid=483997
2010-11-20 20:31
御坂美琴
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:魔術の禁書目錄
等 级:小飞侠
威 望:9
帖 子:952
专家分:2929
注 册:2010-8-18
收藏
得分:0 
"%s" 改 " %c",注意%c前面有空格

永远为正义而奋斗,锄强扶弱的Level 5 超能力者
とある魔術の禁書目錄インデックス__御み坂さか美み琴こと
http://bbs.bccn.net/space.php?action=threads&uid=483997
2010-11-20 20:33
五当家
Rank: 12Rank: 12Rank: 12
等 级:火箭侠
威 望:2
帖 子:1112
专家分:3674
注 册:2010-10-20
收藏
得分:5 
scanf("%s",&stu1.name);
对这些数组赋值时不必加地址符&,你把&去掉试试.

经验积累中............
2010-11-20 20:44
五当家
Rank: 12Rank: 12Rank: 12
等 级:火箭侠
威 望:2
帖 子:1112
专家分:3674
注 册:2010-10-20
收藏
得分:0 
我这里说的数组是字符数组,不包括数字型的.

经验积累中............
2010-11-20 20:48
五当家
Rank: 12Rank: 12Rank: 12
等 级:火箭侠
威 望:2
帖 子:1112
专家分:3674
注 册:2010-10-20
收藏
得分:0 
#include<stdio.h>
struct student
{
    int no;
    char name[30];
    char sex[10];
    int score[3];
    int sum;
    float average;
};
main()
{
  struct student stu1;
  int i;
  stu1.sum=0;
  printf("\t\t\t请输入学号:");
  scanf("%d",&stu1.no);
  printf("\t\t\t请输入名字:");
  scanf("%s",stu1.name);
  printf("\t\t\t请输入性别:");
  scanf("%s",stu1.sex);
  printf("\t\t\t请输入三课分数:");
  for(i=0;i<3;i++)
  {
      scanf("%d",&stu1.score[i]);
      stu1.sum=stu1.score[i]+stu1.sum;
  }
  stu1.average=stu1.sum/3.0;
  printf("no:%d,name:%s,sex:%s,sum:%d,average:%f",stu1.no,stu1.name,stu1.sex,stu1.sum,stu1.average);
}
我把你的改了一点点,就可以了.

经验积累中............
2010-11-20 21:08
快速回复:求助:结构体,struct
数据加载中...
 
   



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

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