红联Linux门户
Linux帮助

看看。。。。。赐教赐教。。。。

发布时间:2011-11-18 12:59:38来源:红联作者:zx84123
#include
void main()
{
int i=0,j=0,k=0;
scanf("%d%*d%d",&i,&j,&k);
printf("%d%d%d\n",i,j,k);
}
若从键盘输入 10 20 30 <回车> 则函数输出是什么?
文章评论

共有 9 条评论

  1. lxyz007 于 2011-11-19 20:28:00发表:

    求牛人解答{:3_108:}

  2. xiexz 于 2011-11-18 20:10:17发表:

    那为什么输入10 20 30时还要再输入输入才会输出结果?直接输10 20 30产生换行之后还要输入一个数值才会有输出或者直接输入4个才有输出如 10 20 30 40才有输出10300

  3. zx84123 于 2011-11-18 19:22:00发表:

    7# zx84123


    貌似在printf中如果出现*就会报错的!!!

  4. zx84123 于 2011-11-18 19:04:24发表:

    在scanf或者printf中出现了*表示 不读取*之后的第一个数据;所以此题中20并没有读取。

  5. tim211314 于 2011-11-18 18:47:43发表:

    好像 没有读入 %*d 输入的值~~于是j=30,k还是0

  6. xiexz 于 2011-11-18 18:20:30发表:

    确实是10300不过要输入4次,为何?

  7. 独孤一郎 于 2011-11-18 16:56:22发表:

    经实验,32位机器用gcc编译,输出为10300。求解释。

  8. zx84123 于 2011-11-18 13:37:32发表:

    有*号的!!!

  9. xiexz 于 2011-11-18 13:07:37发表:

    scanf("%d%*d%d",&i,&j,&k);有*号?
    应该输出10 20??请楼主揭示(6)m:b答案