一道选择题????
若x,y均定义为int型,z定义为double型,以下不合法的scanf函数调用语句是:A)scanf("%d%lx,%le",&x,&y,&z);B)scanf("%2...
若x ,y均定义为int型,z定义为double型,以下不合法的scanf函数调用语句是:
A) scanf(" %d%lx,%le",&x,&y,&z);
B) scanf("%2d * %d%lf"&x,&y,&z );
C) scanf("%x %* d%o",&x,&y);
D) scanf("%x%o%6.2f",&x,&y,&z);
答案是D 有几个疑问 1. B和C中的* 是干什么的
2. D中的%6.2f是什么意思
3. C好像也不对吧 展开
A) scanf(" %d%lx,%le",&x,&y,&z);
B) scanf("%2d * %d%lf"&x,&y,&z );
C) scanf("%x %* d%o",&x,&y);
D) scanf("%x%o%6.2f",&x,&y,&z);
答案是D 有几个疑问 1. B和C中的* 是干什么的
2. D中的%6.2f是什么意思
3. C好像也不对吧 展开
4个回答
展开全部
一.在scanf函数中,*有两种含义:
1.若*不含在%格式之中,则仅冲纳表示是原样输入的字符,如B中的%2d*%d%lf.
在键盘输入数据时应在第一个数据后加腔枯入一个*号,再输入第伍判洞二个数据.
2.若*含在%格式之中,则表示输入的数据不赋值给任何变量,如C中的%x%*d%o.如在键盘上这样输入:
0fff 18 057
则将fff赋值给x,18不赋给任何变量,057赋给y.
所以C是对的.
二.在scanf函数中不能规定实型数据的精度,所以在scanf函数中不能出现%6.2f的格式
但是在printf函数中%6.2f指的是控制实型数据的输出精度,其格式为:
%[-][m].[n]f
其中"-"及"m"、"n"均可有可无,
其意义为:指定输出的实数共占m列,其中有n位小数,当没有"-"时,表示若数值的长度小于m,则右对齐,左补空,有"-"时,则左对齐,右补空;若数值长度>m,则输出全部数值.
m的默认值为6,若缺省m,则m=6.
n指定小数精度,若缺省n,则输出全部小数.
1.若*不含在%格式之中,则仅冲纳表示是原样输入的字符,如B中的%2d*%d%lf.
在键盘输入数据时应在第一个数据后加腔枯入一个*号,再输入第伍判洞二个数据.
2.若*含在%格式之中,则表示输入的数据不赋值给任何变量,如C中的%x%*d%o.如在键盘上这样输入:
0fff 18 057
则将fff赋值给x,18不赋给任何变量,057赋给y.
所以C是对的.
二.在scanf函数中不能规定实型数据的精度,所以在scanf函数中不能出现%6.2f的格式
但是在printf函数中%6.2f指的是控制实型数据的输出精度,其格式为:
%[-][m].[n]f
其中"-"及"m"、"n"均可有可无,
其意义为:指定输出的实数共占m列,其中有n位小数,当没有"-"时,表示若数值的长度小于m,则右对齐,左补空,有"-"时,则左对齐,右补空;若数值长度>m,则输出全部数值.
m的默认值为6,若缺省m,则m=6.
n指定小数精度,若缺省n,则输出全部小数.
展开全部
就是你输入时也要输入*
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
c中*表示空读入一个字符,那样写是没错的
6.2是格式控制,表核做示读入数据所占的宽度
f表示浮点型尘氏橡派旁变量.
6.2是格式控制,表核做示读入数据所占的宽度
f表示浮点型尘氏橡派旁变量.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
B的*是表示你在输入时也必虚纯须有个*,如:
23*20 2.0
至于C的%*,还真不知道,我只知道printf时用%*是干嘛的,哎...
hkhkq说:
"c中*表示空读入一个字符,那样写坦明是没错的让誉告"
那么,你能给出C的输入示例吗?
偶诚恳的等待...
23*20 2.0
至于C的%*,还真不知道,我只知道printf时用%*是干嘛的,哎...
hkhkq说:
"c中*表示空读入一个字符,那样写坦明是没错的让誉告"
那么,你能给出C的输入示例吗?
偶诚恳的等待...
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询