zoukankan      html  css  js  c++  java
  • 字符的读入问题

      当遇到坑题时,读入字符称为了一件难事,看着程序写的有道理,可就是读不进去,读的字符有问题,感觉电脑傻掉了,当进行了无数次的debug之后,终于解决了答案,

    面对这样的窘境,不如我们谈一谈读入字符的方法与经验吧!

    对于读入字符,我们用getchar()或者scanf("%c", &a),当对于字符串,我们用scanf("%s", s),其中s是字符串,注意当读入单个字符时,&必须要加上,但是读入字符串时,&不

    要加,所以写代码时候要注意这一点,如果读取的内容比较麻烦,例如“dafasdf dfasfewurpoiu ffe”这种带有空格或者换行的东西时,我们可以用getchar()与scanf("%c", &a)

    解决,所以getchar()与scanf()读入单个字符时一定要注意空格,换行等东西,scanf("%s", s)读入时,遇到空格、Tab、换行时候停止。

    给大家举一个坑人的例子吧!

    #include <stdio.h> 
    
    int main() 
    {
        int a, b, c;
        char d; 
        scanf("%d%d%d", &a, &b, &c); 
        scanf("%c", &d); 
        printf("%c", d); 
        return 0;    
    }

    样例输入:

    1 2 3 4 5

    样例输出是什么呢?

    是不是 5 呢 ?

    那你就错了,我往往会犯这样的问题,对字符的读入不加以精确的思考,然后盲目调试了半天,无果。。。

    #include <stdio.h> 
    
    int main() 
    {
        int a, b, c;
        char d; 
        scanf("%d%d%d", &a, &b, &c); 
        scanf("%c", &d); 
        printf("%c", d); 
        if(d == ' ') printf("...");
        return 0;    
    }

    所以我们需要时刻记住printf与getchar()读入是多么的精细,这是我们时刻需要注意的问题。

    语言c++计算机程序设计爱好者 不定期更新题目题解 望互相分享心得体会 有意留言加q
  • 相关阅读:
    编程基本功训练:流程图画法及练习
    BDB (Berkeley DB)数据库简单介绍(转载)
    FusionCharts简单教程(一)---建立第一个FusionCharts图形
    curl命令具体解释
    Filter及FilterChain的使用具体解释
    在Activity中为什么要用managedQuery()
    String类
    ruby语言仅仅是昙花一现
    android 内部类的优化
    linux类库之log4j-LogBack-slf4j-commons-logging
  • 原文地址:https://www.cnblogs.com/yifeiWa/p/10335542.html
Copyright © 2011-2022 走看看