北郡 发表于 2019-5-10 11:46:55

传递指向结构体变量的指针

本帖最后由 北郡 于 2019-5-10 11:48 编辑

程序执行结果如图所示。
问题是:
每次输入完出版日期,按回车后,直接跳出:

“请输入出版社:
请录入第二本书的信息:”

出版社信息不能录入

执行结果中的出版日期和出版社也是乱的。


请教大神,这到底是什么问题? 谢谢!

jackz007 发表于 2019-5-10 12:06:55

本帖最后由 jackz007 于 2019-5-10 12:20 编辑

      scanf("%d-%d-%d" , & book -> date . year , & book -> date . month ,& book -> date . day) ;
      要改成这样:
      scanf("%d%d%d" , & book -> date . year , & book -> date . month ,& book -> date . day) ;
      输入日期的时候,记得要把逗号换成空格,像这样:2017 5 20

       代码,代码,代码,要贴成文字,不要贴成图片!!!
   
   

我叫MD 发表于 2019-5-10 12:21:24

你scanf接收的形势是:
      scanf("%d-%d-%d" , & book -> date . year , & book -> date . month ,& book -> date . day) ;
这样,所以输入日期的时候应该这样 : 2017-3-4   的和scanf接收的形势匹配,你用逗号,它只会接收2017,后面读取不到当然补0了

北郡 发表于 2019-5-10 12:42:22

jackz007 发表于 2019-5-10 12:06
要改成这样:

      输入日期的时候,记得要把逗号换成空格,像这样:2017 5 20


谢谢,但是换成空格还是错的,楼下是对的,应该是这样输入:2019-5-10

北郡 发表于 2019-5-10 12:42:53

我叫MD 发表于 2019-5-10 12:21
你scanf接收的形势是:

这样,所以输入日期的时候应该这样 : 2017-3-4   的和scanf接收的形势匹配, ...

谢谢!
页: [1]
查看完整版本: 传递指向结构体变量的指针