1.怎么对上一次循环中的某个值与下一次循环中的值进行比较?很简单,我们首先需要一个变量去接收上一次循环中你要比较的值 例如 求最小值
int a,b,c=1000,min;
for(a=0;a<=6;a++){
scanf("%d",&b);
if(b<c){ //第一次直接用b<c , 并且给C赋值,是为了确保条件为真
min=b;
c=b; // c=b 在 if判断语句之后,也就是说 先进行b和c的比较,
//然后 给C赋予本次循环中b的值 所以在下一次判断b和c 的大小时,c的值时上一次循环中的b的值。
}
printf("%d",min); // 输出的值就是所有输入的数中最小的数。
}
求普通int型数组中的最值:
int a[10],i,max,min;
max=a[0];
min=a[0];
for(int i=0;i<10;i++){
if(a[i]<min) //最小值
min=a[i];
if(a[i]>min) //最大值
min=a[i];
}
核心思想是当我们需要从for循环中带出一个值进行一些操作时,我们常常需要用到if语句,从而保存符合条件的值或者说想要的值。
由此 我们也可以推广为排序算法。