网页资讯视频图片知道文库贴吧地图采购
进入贴吧全吧搜索

 
 
 
日一二三四五六
       
       
       
       
       
       

签到排名:今日本吧第个签到,

本吧因你更精彩,明天继续来努力!

本吧签到人数:0

一键签到
成为超级会员,使用一键签到
一键签到
本月漏签0次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行补签。
连续签到:天  累计签到:天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
06月14日漏签0天
c语言吧 关注:798,802贴子:4,356,187
  • 看贴

  • 图片

  • 吧主推荐

  • 视频

  • 游戏

  • 17回复贴,共1页
<<返回c语言吧
>0< 加载中...

【求助】弱弱的问下关于多行输入以回车结束的问题

  • 只看楼主
  • 收藏

  • 回复
  • 无影东瓜
  • 异能力者
    6
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
RT,做题时最腻歪这种输入多组数据既不给数据行数也没有结束字符的缺德问题,但偏偏还就是这种缺德题最多
当初为了解决这个问题专门翻了下键盘缓冲区那块的东西,看了个似懂非懂,起码知道scanf面对这种情况不好使了,而且知道了用getchar()或gets()配合while判断解决的方法,类似这样

但是很多时候getchar()和gets()特别不方便:比如说一道题给输入数据,每行是多个字符串中间用空格隔开,这时候用scanf很方便但没法终止输入;用gets()倒是能终止输入了,但是拆字符串简直麻烦死(没错,我说的就是这道题http://poj.grids.cn/practice/2934)
求各位大能指点一种方便点的法,感激不尽


  • 无影东瓜
  • 异能力者
    6
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
这问题就这么不招人待见吗,俩小时一个人回复没有


2025-06-14 04:25:19
广告
  • liushuyu940718
  • 毛蛋
    1
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
同跪了…………


  • 皮卡丘-
  • 超能力者
    9
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
scanf加while循环如何?while((c=getchar())!=10)


  • 正在找你_
  • 毛蛋
    1
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
1)你可以开辟一个1000字节的数组。并全部初始化为\0.
2)你在获得输入时跳过哪个空格,保留回车。
3)对这个数组进行ASCII排序,以回车分段。是多段排序,不是一段。
4)打印这个数组。


  • 沉默在哭诉
  • 彩虹面包
    13
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
while(scanf()!=EOF){
…… balabala
}
ctrl+z结束输入


  • _yes蒹葭苍苍
  • 低能力者
    5
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
正在纠结怎么破。。


  • a327380135
  • 彩虹面包
    13
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
你需要一本好书比如CPP以及..................................................


2025-06-14 04:19:19
广告
  • 贴吧用户_06WGVSy610
  • 团子家族
    10
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
问题好长,不过八楼解决方案不安全,


  • 贴吧用户_06WGVSy610
  • 团子家族
    10
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
如果你熟练的知道你获取的每一个字符,就不会有这个问题。。感觉说了废话,,


  • 贴吧用户_06WGVSy610
  • 团子家族
    10
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
gets吸收行尾回车。
scanf(%s)不吸收回车或者空格。
getchar()吸收任何输入字符。


  • 嘤嘤嘤荫
  • 彩虹面包
    13
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼


登录百度账号

扫二维码下载贴吧客户端

下载贴吧APP
看高清直播、视频!
  • 贴吧页面意见反馈
  • 违规贴吧举报反馈通道
  • 贴吧违规信息处理公示
  • 17回复贴,共1页
<<返回c语言吧
分享到:
©2025 Baidu贴吧协议|隐私政策|吧主制度|意见反馈|网络谣言警示