zoukankan      html  css  js  c++  java
  • 你的c语言过关吗?

     1 #include <stdio.h>
     2 int main(void) 
     3 {
     4     char c;
     5     
     6     scanf("%c", &c);
     7     while (c != 'J') {
     8         printf("No!\n");
     9         scanf("%c", &c);
    10     }
    11     return 0;
    12 }

     对scanf()的认知不足。

    我见过某网站的C语言视频教程里的教师写了一个这样的程序(上)

    然后他发现程序有问题,输入除J外的字母后会出现两行的No!,当

    时他不知道怎么回事,没有办法,就打马虎眼过去了。

    你知道怎么修改这个错误吗?

    我见过很多人改,大多数人都是加了好长的代码。

    其实呢,只要把scanf("%c", &c);改成scanf(" %c", &c);,这样就忽略了之前的空白字符,问题就被解决了。

    如果你不知道怎么回事,说明你的C语言学得不扎实。

    我自豪 我是一名软件工程师。
  • 相关阅读:
    GDOI模拟赛Round 1
    Codeforces 241B
    Codeforces 325E
    Codeforces 235E
    Codeforces 293B
    Codeforces 263E
    快速傅里叶变换FFT
    后缀自动机
    NOI2011 Day2
    NOI2014 Day2
  • 原文地址:https://www.cnblogs.com/pipicfan/p/2607545.html
Copyright © 2011-2022 走看看