美文网首页
getchar()过滤输入中的空格

getchar()过滤输入中的空格

作者: mark_x | 来源:发表于2019-08-04 11:22 被阅读0次

方法一:

#include <stdio.h>

int main(void)
{
    char s[128];
    char ch;
    int i = 0;
    
    printf("请输入文字:\n");
    
    while((ch=getchar()) != '\n')
    {
        if (ch != ' ')
        {
            s[i] = ch;
            i++;
        }
    }
    
    s[i+1] = '\0';  // 字符串结束标识符
    
    printf("去掉空格后的文字:%s\n", s);
    return 0;
}

方法二:(转载)

作者:Mudrobot
来源:CSDN
原文:https://blog.csdn.net/qq_40079933/article/details/80149956
版权声明:本文为博主原创文章,转载请附上博文链接!

#include <stdio.h>

char st[500];
int u = 0;

void read()
{
    char c;
    while(c != '\n')
    {
        c = getchar();
        while(c == ' ')
        {
            c = getchar();  // 用于过滤空格
        }              

        st[u] = c;
        u++;
    }
}

int main()
{
    read();
    for(int i = 0; i < u; i++)
    {
        printf("%c", st[i]);
    }
    return 0;
}

如果前面一直没有空格,则一直进行外部while循环,将本次输入的字符写入st数组;一旦检测到空格,则进入内层while循环,如果一直是空格就一直在内层循环,一直过滤空格,直到输入非空格,跳出内层while循环,继续写入st数组。

问题1:方法二中,如果输入12<空格><空格>34<空格><回车>,最后的回车是会被写入数组的。因为在回车前是<空格>
如果输入12<空格><空格>34<回车>,则最后的回车不会被写入数组。
但是,结果却似乎是最后的回车都没有写入数组。

问题2:getchar()不是每输入一个字符就提交判断,因为如果把外层循环的终止条件改成其他字母比如p就不行。

相关文章

  • getchar()过滤输入中的空格

    方法一: 方法二:(转载) 作者:Mudrobot来源:CSDN原文:https://blog.csdn.net/...

  • 实验吧-web-简单的sql注入

    简单的注入测试 重复输入union select后发现空格也被过滤了,用两个空格代替一个空格或用对注释符/**/绕...

  • cypress执行报错:Timed out retrying:

    1.查找这个标题找不到 2.对比页面数据 3.原因分析 输入的时候自动过滤了空格,但是查找的时候未过滤,导致输入和...

  • C语言——基础入门函数简介

    getchar() - putchar() 输入 - 输出 isdigit() - isalpha() 是否是数字...

  • LaTex中输入空格

    1. 空格表示法 使用反斜杠“\”来表示空格 2. 空格长度 名称长度代号效果qquad空格2ema \qquad...

  • 代码闪退

    方法一:getchar() 即在主函数尾部或程序最后加上getchar(); 也就是接受键盘输入,这样程序就不会一...

  • 随手笔记

    Typora快捷键 无序列表:输入-之后输入空格 有序列表:输入数字+“.”之后输入空格 任务列表:-[空格]空格...

  • Anroid EditText禁止输入空格、特殊符号

    有时候我们需要限制EditText输入的字符类型,如空格,特殊字符等,这时候我们可以使用系统提供的输入过滤器——I...

  • NSString字符串小结

    字符串数值计算 去除字符串两端的空格、用户连续输入换行过滤、字符串包含替换 拼接字符串,可以增加空格 字符串截取 ...

  • 防止sql注入的方法和原理

    前端过滤,输入框中过滤特殊字符,或者限制输入的字符集合 代码层手动过滤,同上 利用连接池组件过滤,比如druid的...

网友评论

      本文标题:getchar()过滤输入中的空格

      本文链接:https://www.haomeiwen.com/subject/fhiedctx.html