免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12
最近访问板块 发新帖
楼主: baicaidaoshi

[C] 关于结构体数组问题! [复制链接]

论坛徽章:
0
发表于 2015-11-16 18:03 |显示全部楼层
回复 2# zsszss0000


   将&stu.name更改成后stu.name仍然不行,
仍跟之前一样,输入到name成员后就结束了!

求职 : 机器学习
论坛徽章:
79
2015年亚洲杯纪念徽章
日期:2015-05-06 19:18:572015七夕节徽章
日期:2015-08-21 11:06:172015亚冠之阿尔纳斯尔
日期:2015-09-07 09:30:232015亚冠之萨济拖拉机
日期:2015-10-21 08:26:3915-16赛季CBA联赛之浙江
日期:2015-12-30 09:59:1815-16赛季CBA联赛之浙江
日期:2016-01-10 12:35:21技术图书徽章
日期:2016-01-15 11:07:2015-16赛季CBA联赛之新疆
日期:2016-02-24 13:46:0215-16赛季CBA联赛之吉林
日期:2016-06-26 01:07:172015-2016NBA季后赛纪念章
日期:2016-06-28 17:44:45黑曼巴
日期:2016-06-28 17:44:4515-16赛季CBA联赛之浙江
日期:2017-07-18 13:41:54
发表于 2015-11-16 23:54 |显示全部楼层
本帖最后由 zsszss0000 于 2015-11-16 23:55 编辑
  1.   #include <stdio.h>
  2.   struct student
  3.   {
  4.      int num;
  5.      char name[20];
  6.      char sex;
  7.      int age;
  8.      char addr[30];
  9.   }stu[3];

  10.   int main()
  11.   {
  12.     int i = 0;
  13.     for(i=0;i<3;i++)
  14.     {
  15.       scanf("%d %s %c %d %s",&stu[i].num,stu[i].name,&stu[i].sex,&stu[i].age,stu[0].addr);
  16.     }
  17. }
复制代码
试试这个 应该没有问题
回复 11# baicaidaoshi


   

论坛徽章:
0
发表于 2015-11-17 18:35 |显示全部楼层
zsszss0000 发表于 2015-11-16 23:54
试试这个 应该没有问题
回复 11# baicaidaoshi

现在输入是可以正常了,只是我稍作了一点修改后在输入完name后,sex跟age一起显示,无法输入性别!
怎么会这样我又写错那个里了?
snapshot3.png
snapshot4.png

求职 : 机器学习
论坛徽章:
79
2015年亚洲杯纪念徽章
日期:2015-05-06 19:18:572015七夕节徽章
日期:2015-08-21 11:06:172015亚冠之阿尔纳斯尔
日期:2015-09-07 09:30:232015亚冠之萨济拖拉机
日期:2015-10-21 08:26:3915-16赛季CBA联赛之浙江
日期:2015-12-30 09:59:1815-16赛季CBA联赛之浙江
日期:2016-01-10 12:35:21技术图书徽章
日期:2016-01-15 11:07:2015-16赛季CBA联赛之新疆
日期:2016-02-24 13:46:0215-16赛季CBA联赛之吉林
日期:2016-06-26 01:07:172015-2016NBA季后赛纪念章
日期:2016-06-28 17:44:45黑曼巴
日期:2016-06-28 17:44:4515-16赛季CBA联赛之浙江
日期:2017-07-18 13:41:54
发表于 2015-11-17 20:08 |显示全部楼层
大哥,你贴源代码吧

回复 13# baicaidaoshi


   

论坛徽章:
0
发表于 2015-11-18 08:48 来自手机 |显示全部楼层
我以经帖图了呀!看不到?

求职 : 机器学习
论坛徽章:
79
2015年亚洲杯纪念徽章
日期:2015-05-06 19:18:572015七夕节徽章
日期:2015-08-21 11:06:172015亚冠之阿尔纳斯尔
日期:2015-09-07 09:30:232015亚冠之萨济拖拉机
日期:2015-10-21 08:26:3915-16赛季CBA联赛之浙江
日期:2015-12-30 09:59:1815-16赛季CBA联赛之浙江
日期:2016-01-10 12:35:21技术图书徽章
日期:2016-01-15 11:07:2015-16赛季CBA联赛之新疆
日期:2016-02-24 13:46:0215-16赛季CBA联赛之吉林
日期:2016-06-26 01:07:172015-2016NBA季后赛纪念章
日期:2016-06-28 17:44:45黑曼巴
日期:2016-06-28 17:44:4515-16赛季CBA联赛之浙江
日期:2017-07-18 13:41:54
发表于 2015-11-18 09:31 |显示全部楼层
不是 贴图  是贴代码,贴图怎么看啊




回复 15# baicaidaoshi


   

论坛徽章:
36
CU大牛徽章
日期:2013-09-18 15:24:20NBA常规赛纪念章
日期:2015-05-04 22:32:03牛市纪念徽章
日期:2015-07-24 12:48:5515-16赛季CBA联赛之辽宁
日期:2016-03-30 09:26:4715-16赛季CBA联赛之北控
日期:2016-03-30 11:26:2315-16赛季CBA联赛之广夏
日期:2016-05-20 15:46:5715-16赛季CBA联赛之吉林
日期:2016-05-24 11:38:0615-16赛季CBA联赛之青岛
日期:2016-05-30 13:41:3215-16赛季CBA联赛之同曦
日期:2016-06-23 16:41:052015年亚洲杯之巴林
日期:2015-02-03 15:05:04CU大牛徽章
日期:2013-09-18 15:24:52CU十二周年纪念徽章
日期:2013-10-24 15:46:53
发表于 2015-11-18 09:41 |显示全部楼层
回复 2# zsszss0000


    两个一样的

论坛徽章:
0
发表于 2015-11-18 18:05 |显示全部楼层
回复 16# zsszss0000
#include <stdio.h>
#define p printf
#define s scanf
      struct student
      {
         int num;
         char name[20];
         char sex;
         int age;
         char addr[30];
      }

      main()
      {
       struct student str[3];

        int i = 0;
        for(i=0;i<3;i++)
        {
        p ("Num:");
        s ("%d",&str.num);
       p ("Name:");
      s ("%s",str.name);
      p ("Sex:");
      s ("%c",&str.sex);
      p ("Age:");
      s ("%d",&str.age);
      p ("Addr:");
      s ("%s",&str.addr);
        }
       int j=0;
       for (j=0;j<3;j++)
       {
       printf ("num:%d\nname:%s\nsex:%c\nage:%d\naddr:%s\n",str[j].num,str[j].name,str[j].sex,str[j].age,str[j].addr);
        }
}



这个就是问题代码,在输入完name后,
就成了Sex:Age:连在一起,没办法输入性别!



   

论坛徽章:
1
平安夜徽章
日期:2015-12-26 00:06:30
发表于 2015-11-23 23:26 |显示全部楼层
sex已经获取到了值,就是上边name字符串后面你输入的换行符。
代码应该这样:
  p ("Name:");
  s ("%s",str.name);
  fflush(stdin); //清空一下输入缓冲区
  p ("Sex:");
  s ("%c",&str.sex);

论坛徽章:
0
发表于 2015-11-24 08:54 |显示全部楼层
话说,编译的时候没有警告吗?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP