首页 > 用户发贴区 > 编程问题提问区 > while(scanf("%d %d",&evil,&evil2)==2)
2009
03-31

while(scanf("%d %d",&evil,&evil2)==2)

#include<stdio.h>
int imin(int,int);
int main()
{
  int evil1,evil2;


  printf(“enter a pair of integer(q to quit):\n”);
  while(scanf(“%d %d”,&evil1,&evil2)==2)
  {
    printf(“the lesser of %d and %d is %d.\n”,
  evil1,evil2,imin(evil1,evil2));
 printf(“enter a pair of integer(q to quit);\n”);
  }
  printf(“bye.\n”);
  return 0;
}


int imin(int n,int m)
{
  int min;
  if(n<m)
   min=n;
  else
   min=m;
  return min;
}


中间那句while(scanf(“%d %d”,&evil1,&evil2)==2)
是什么意思啊?高手指导下!谢谢!


while(scanf("%d %d",&evil,&evil2)==2)》有 3 条评论

  1. kangmin88 说:

    我也是初学者,不过我想这题应该是这样的

    scanf也是一个函数,stdio.h文件中是这样定义的_CRTIMP int __cdecl scanf(const char *, …);证明它其实是有返回值的,且返回值就是char的个数

  2. whos 说:

    补充一下,那句代码的意思是:

    如果输入的是两个数,则执行循环里的语句,否则退出循环。

  3. 紫不溜湫 说:

    非常感谢楼上!我说怎么把2该成1.3.4等程序都不进入循环的,谢谢!

留下一个回复