| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1507 人关注过本帖
标题:【求助】想实现输入字符串,检测到回车停止输入。
只看楼主 加入收藏
HolyDumpling
Rank: 2
来 自:山东
等 级:论坛游民
帖 子:14
专家分:10
注 册:2016-10-28
结帖率:66.67%
收藏
已结贴  问题点数:20 回复次数:3 
【求助】想实现输入字符串,检测到回车停止输入。
如题,搜索得到的结果是使用while(getchar()!='\n')。但是发现循环条件里面的getchar()会冲掉本来要输入的字符串求解决。
abcd被a[n]和b[n]分别读取了。怎么解决?还有,现在必须要输入两次回车才可以终止。。。
图片附件: 游客没有浏览图片的权限,请 登录注册
程序代码:
#include<stdio.h>
int main()
{
    int a[99]={9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9},n=0,b[99]={0};
    char m;
    do{
        n++;
        //scanf("%c",&a[n]);
        a[n]=getchar();
    }while((b[n]=getchar())!='\n');
    printf("%d %d %d %d %d\n",a[1],a[2],a[3],a[4],a[5]);
    //printf("%c",m);
    printf("%d %d %d %d %d\n",b[1],b[2],b[3],b[4],b[5]);
}



[此贴子已经被作者于2016-12-13 19:49编辑过]

搜索更多相关主题的帖子: 字符串 color 检测 
2016-12-13 19:46
九转星河
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:长长久久
等 级:贵宾
威 望:52
帖 子:5023
专家分:14003
注 册:2016-10-22
收藏
得分:7 
根据题意-----想实现输入字符串,检测到回车停止输入------这样做试试看~

while ((a=getchar())!='\n')
{
……
}

[code]/*~个性签名:bug是什么意思?bug是看上去没有可能的东西实际上是有可能做到的 就是这样~2018-08-08更~*/[/code]
2016-12-13 20:29
hxwj
Rank: 2
等 级:论坛游民
帖 子:75
专家分:34
注 册:2016-12-8
收藏
得分:7 
do{
         n++;
         //scanf("%c",&a[n]);
        a[n]=getchar();
     }while((b[n]=getchar())!='\n');

一次循环会执行两次字符输入,只要出现getchar(),就会要输入字符,最好这样:
while(b[n]=getchar())!='\n')
{
      n++;
}

[此贴子已经被作者于2016-12-13 20:42编辑过]

2016-12-13 20:38
ldsh304
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:7
帖 子:242
专家分:755
注 册:2016-1-18
收藏
得分:7 
输入字符串可以用
scanf("%s", a);//在遇到空格和回车时结束输入流
或gets(a);//在遇到回车时结束输入流
2016-12-13 21:00
快速回复:【求助】想实现输入字符串,检测到回车停止输入。
数据加载中...
 
   



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

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