展开全部
以上楼只有 dark___templar 稍微靠谱一点。
%*作为运算符不能连着用。当然如果是
int a=4,b=2,*p=&b;
if(a%*b==0);
之类的用法那就当我没说(不过基本不会这么用- -)
----
在scanf函数族格式串中,%*可以表示跳过读取某些输入值。
援引 dark___templar 的代码,LZ可以自己试验:
#include <stdio.h>
int main()
{
int a,b;
scanf("%d%*d%d",&a,&b);
getchar();
printf("a=%d,b=%d\n",a,b);
getchar();
return 0;
}
“输入 12 3 12
这样
a b 都被赋值为12 ”
----
另外,在printf函数族中,%*里面的*表示一个从参数列表中读入的数字,用以限制长度,例如:
#include <stdio.h>
int main()
{
double a=10000.22222,b=20000.3333;
printf("a=%2.4lf,b=%16.2lf\n",a,b);
printf("a=%*.4lf,b=%*.*lf\n",2,a,16,2,b);
getchar();
return 0;
}
注意以上两个printf的效果相同。%m.n表示输出总宽度(字符数)不超过m,小数点后保留n位。
%*作为运算符不能连着用。当然如果是
int a=4,b=2,*p=&b;
if(a%*b==0);
之类的用法那就当我没说(不过基本不会这么用- -)
----
在scanf函数族格式串中,%*可以表示跳过读取某些输入值。
援引 dark___templar 的代码,LZ可以自己试验:
#include <stdio.h>
int main()
{
int a,b;
scanf("%d%*d%d",&a,&b);
getchar();
printf("a=%d,b=%d\n",a,b);
getchar();
return 0;
}
“输入 12 3 12
这样
a b 都被赋值为12 ”
----
另外,在printf函数族中,%*里面的*表示一个从参数列表中读入的数字,用以限制长度,例如:
#include <stdio.h>
int main()
{
double a=10000.22222,b=20000.3333;
printf("a=%2.4lf,b=%16.2lf\n",a,b);
printf("a=%*.4lf,b=%*.*lf\n",2,a,16,2,b);
getchar();
return 0;
}
注意以上两个printf的效果相同。%m.n表示输出总宽度(字符数)不超过m,小数点后保留n位。
参考资料: 原创 +引用
展开全部
一个字符或者一串字符的意思。
具体来说:
是格式输出的意思,就是说一个字符或者一串字符、数字,以什么样的格式输出。
%:
%d整型输出,%ld长整型输出,%o以八进制数形式输出整数,%x以十六进制数形式输出整数,%u以十进制数输出unsigned型数据(无符号数)。%c用来输出一个字符,%s用来输出一个字符串,%f用来输出实数,以小数形式输出,%e以指数形式输出实数,%g根据大小自动选f格式或e格式,且不输出无意义的零。
*: 指针符号或者乘号
具体来说:
是格式输出的意思,就是说一个字符或者一串字符、数字,以什么样的格式输出。
%:
%d整型输出,%ld长整型输出,%o以八进制数形式输出整数,%x以十六进制数形式输出整数,%u以十进制数输出unsigned型数据(无符号数)。%c用来输出一个字符,%s用来输出一个字符串,%f用来输出实数,以小数形式输出,%e以指数形式输出实数,%g根据大小自动选f格式或e格式,且不输出无意义的零。
*: 指针符号或者乘号
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
除了楼上几位的,% 的意思还有取模~5%2=1之类的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用在scanf的格式字符串中
表示与之相对应的 那一段(个)字符 忽略
比如
int a,b;
scanf("%d%*d%d",&a,&b);
输入 12 3 12
这样
a b 都被赋值为12
表示与之相对应的 那一段(个)字符 忽略
比如
int a,b;
scanf("%d%*d%d",&a,&b);
输入 12 3 12
这样
a b 都被赋值为12
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询