鱼C论坛

 找回密码
 立即注册
查看: 2516|回复: 3

s1e8中待解决的问题

[复制链接]
发表于 2018-10-10 00:49:03 | 显示全部楼层 |阅读模式

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

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

x
本帖最后由 不成呐 于 2018-10-10 08:41 编辑

C:\Users\Administrator\Desktop\firstc\s1e8\捕获2.PNG
(一)在操作动动手1的时候,我根据答案将int换为float声明变量后,就无法成功输入变量
按enter键只是换行,为什么呢
(二)char name[256]的中括号里的256代表着它有256个字节,
那么一个汉字是代表几个字节呢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2018-10-10 00:51:53 | 显示全部楼层
这是图片

捕获2.PNG
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-10-10 14:00:35 | 显示全部楼层
scanf("%s %f %f", name, &height, &weight); //里面空格就好,不要放回车,然后 name 是数组,不要有 &
你要分开输入的话就分开

printf()
scanf()
printf()
scanf()
...

char name[256]; 是指它有256个元素,不是字节,char 只有一个字节,中文的话要用 w_char 要用 unicode 编码了, ascii 支持不了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-10-10 15:46:01 | 显示全部楼层
本帖最后由 啊涂涂 于 2018-10-10 15:49 编辑


在sacnf中 “\n” 不是表示接受一个回车符,而是表示忽略所有的空白字符(包括回车,空格, tab)。所以想要结束输入就要输入任意一个非空白字符即可, 但是该字符仍然会停留在缓冲区中
关于中文占几个字符的问题,电脑之间不太一样,再往后你就会学到,我的电脑就是占用两个,小甲鱼的就是三个
而且你这种写法的话表达的意思也不那么准确正常来说应该是输入一个再出来下一个,一般没有这样输入的,而且scanf函数里面也不会用回车来分隔,直接用空格分一下就行了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-30 12:27

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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