c语言 %d%*c是什么意思?

Anyloo 2009-01-17 05:59:20
c语言 scanf( “%d%*c”,&n)是什么意思?
主要%*c
...全文
12678 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
suojieshou 2011-12-30
  • 打赏
  • 举报
回复
再弱弱地问一下 printf("%*c",space,'');是什么意思?
jinianjun 2011-04-23
  • 打赏
  • 举报
回复
经常逛逛csdn,学习学习
na5120 2010-05-06
  • 打赏
  • 举报
回复 4
格式字符串的一般形式为:
%[*][输入数据宽度][长度]类型
其中有方括号[]的项为任选项

“*”符:用以表示该输入项,读入后不赋予相应的变量,即跳过该输入值。
如:
scanf("%d %*d %d",&a,&b);
当输入为:1 2 3时,把1赋予a,2被跳过,3赋予b。

%*c则是指跳过字符

所以那一句的%*c的作用是拿来吸收回车字符用的吧
yucenh 2009-10-03
  • 打赏
  • 举报
回复
谢谢各位 学习到了 呵呵
Anyloo 2009-01-18
  • 打赏
  • 举报
回复
hao de
Anyloo 2009-01-18
  • 打赏
  • 举报
回复
谢谢各位
我知道了 很详细 Thanks...
gsrdell 2009-01-17
  • 打赏
  • 举报
回复
跳过字符,也就是*c所处的位置是第几个,那么按scanf采集到第几个跳
lbh2001 2009-01-17
  • 打赏
  • 举报
回复
[Quote=引用楼主 Anyloo 的帖子:]
c语言 scanf( “%d%*c”,&n)是什么意思?
主要%*c
[/Quote]

%*c作用时读取输入流中数字后的一个字符,并丢弃,使得后面的输入函数不能读到那个字符
waizqfor 2009-01-17
  • 打赏
  • 举报
回复

%*c//表示跳过这个字符的意思
xiaoyisnail 2009-01-17
  • 打赏
  • 举报
回复
%后的“*”附加说明符,用来表示跳过它相应的数据。例如:
scanf(“%2d%*3d%2d”,&a,&b);
如果输入如下信息:1234567。将12赋给a,67赋给b。第二个数据”345”被跳过不赋给任何变量。

http://www.programfan.com/blog/article.asp?id=10153
星羽 2009-01-17
  • 打赏
  • 举报
回复 1
你还可以掉过一个int 一个float 一个字符串等,比如
跳过一个int


#include "stdio.h"

int main()
{
int a, b;

scanf("%d%*d%d", &a, &b);

printf("%d %d\n", a, b);

return 0;
}


你输入1 2 3, a得到的是1,b得到的是3,2被跳过
星羽 2009-01-17
  • 打赏
  • 举报
回复 1
跳过一个字符

举个例子


#include "stdio.h"

int main()
{
int a, b;

scanf("%d%*c%d", &a, &b);

printf("%d %d\n", a, b);

return 0;
}


你输入1n2,那么scanf把1读取赋给变量a,如果跳过一个char(这里是 ‘n’)接着读取2赋给变量b
t1397018 2009-01-17
  • 打赏
  • 举报
回复
%D代表的是一整形的方式输出,%C代表的是一字符的方式输出
FoxOnWeb 2009-01-17
  • 打赏
  • 举报
回复
ding!!!

[Quote=引用 1 楼 sagegz 的回复:]
格式字符串的一般形式为:
%[*][输入数据宽度][长度]类型
其中有方括号[]的项为任选项

“*”符:用以表示该输入项,读入后不赋予相应的变量,即跳过该输入值。
如:
scanf("%d %*d %d",&a,&b);
当输入为:1 2 3时,把1赋予a,2被跳过,3赋予b。
[/Quote]
sagegz 2009-01-17
  • 打赏
  • 举报
回复
[Quote=引用楼主 Anyloo 的帖子:]
c语言 scanf( "%d%*c”,&n)是什么意思?
主要%*c
[/Quote]
就是给n赋上第一个输入的整数.
我上面参考的是谭浩强的<<C语言程序设计>>,LZ有兴趣可以去看下!
sagegz 2009-01-17
  • 打赏
  • 举报
回复
格式字符串的一般形式为:
%[*][输入数据宽度][长度]类型
其中有方括号[]的项为任选项

“*”符:用以表示该输入项,读入后不赋予相应的变量,即跳过该输入值。
如:
scanf("%d %*d %d",&a,&b);
当输入为:1 2 3时,把1赋予a,2被跳过,3赋予b。

33,311

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 新手乐园
社区管理员
  • 新手乐园社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧