从键盘输入若干个整数,求其中的最大者和最小者,直到输入“0”为止
算法分析:
- 读取第一个整数i,并假设它是当前最大整数max,也是当前最小整数min
- 当,则重复执行以下操作,若i<min,则min=i;从键盘输入下一个整数;若i>max,则max=i;从键盘输入下一个整数;输出最终的最小整数和最大整数
代码如下:
//从键盘输入若干个整数,求其中的最大者和最小者,直到输入“0”为止
#include<stdio.h>
int main(void)
{
int i,max,min;
scanf("%d",&i);
max=min=i;
for(;i!=0;)
{
if(i<min)
min=i;
if(i>max)
max=i;
scanf("%d",&i);
}
printf("max= %d\nmin= %d\n",max,min);
return 0;
}
键盘输入:
23 56 89 41 52 63 0 回车
结果如下:
也可以使用以下的while语句或do-while语句替代for语句
while(i!=0)
{
if(i<min)
min=i;
if(i>max)
max=i;
scanf("%d",&i);
}
do
{
if(i<min)
min=i;
if(i>max)
max=i;
scanf("%d",&i);
}while(i!=0);