| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1407 人关注过本帖
标题:到底什么时候要加%*c
只看楼主 加入收藏
CCC1234
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2018-1-13
结帖率:0
收藏
已结贴  问题点数:20 回复次数:4 
到底什么时候要加%*c
#include<stdio.h>
void main()
{
    int i,t,l;
    char s[100],m;
    while(~scanf("%c%*c",&m))
    {
        t=0;
        gets(s);
        for(i=0;s[i]!='\0';i++)
        {
            if(s[i]==m)
                t++;
        }
        printf("%c:%d\n",m,t);
    }
}
这个%c后面为什么要加%*c
搜索更多相关主题的帖子: scanf gets for i++ printf 
2018-01-13 21:33
吹水佬
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:451
帖 子:10609
专家分:43210
注 册:2014-5-20
收藏
得分:10 
取%c不取%*c
2018-01-13 22:15
南山南
Rank: 2
等 级:论坛游民
帖 子:19
专家分:17
注 册:2016-10-19
收藏
得分:10 
C语言中没有用%*c来表示数据类型吧

哪有什么岁月静好,不过是有人替你负重前行。。。
2018-01-14 20:50
吹水佬
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:451
帖 子:10609
专家分:43210
注 册:2014-5-20
收藏
得分:0 

scanf()函数调用格式为: scanf("<格式化字符串>",<地址表>);

格式化字符串其控制串由三类字符构成:

1、格式化说明符
2、空白符
3、非空白符

(1)格式化说明符
格式  说明
%a    读入一个浮点值(仅C99有效)
%A    同上
%c    读入一个字符
%d    读入十进制整数
%i    读入十进制,八进制,十六进制整数
%o    读入八进制整数
%x    读入十六进制整数
%X    同上
%c    读入一个字符
%s    读入一个
%f    读入一个浮点数
%F    同上
%e    同上
%E    同上
%g    同上
%G    同上
%p    读入一个指针
%u    读入一个无符号十进制整数
%n    至此已读入值的等价字符数
%[]   扫描字符集合
%%    读%符号
%*    指定类型的数据但不保存

(2)空白字符
空白字符会使scanf()函数在读操作中略去输入中的一个或多个空白字符,空白符可以是space,tab,newline等等,直到第一个非空白符出现为止。

(3)非空白字符
一个非空白字符会使scanf()函数在读入时剔除掉与这个非空白字符相同的字符。但在输入时必须输入这些字符。否则就会出错 。

2018-01-15 05:29
南山南
Rank: 2
等 级:论坛游民
帖 子:19
专家分:17
注 册:2016-10-19
收藏
得分:0 
回复 4楼 吹水佬
受教了

哪有什么岁月静好,不过是有人替你负重前行。。。
2018-01-15 08:37
快速回复:到底什么时候要加%*c
数据加载中...
 
   



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

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