首先观察下面两个scanf函数里面的内容,下面那句多了一个%*c
scanf("%c%c",&a,&b);
scanf("%c%*c%c",&a,&b);
分别输入N O(注意N和O之间是空格),在读取第一个字符串时,程序会读到下一个空白字符出现才为一个字符串,所以第一个scanf函数a接受到的是N,程序接着往下读取到一个空白字符,所以b接受到的是 (空格),使用printf函数打印后结果将是N (N后面带着一个空白格)
那么第二个scanf函数多了一个/*c,这是能抑制字符输入,所以最后结果能输出是NO,无论在N与O之间输入任何一个字符都不会被读取。