为了账号安全,请及时绑定邮箱和手机立即绑定

求知道这题参考代码为什么用if他会一直循环?

就是参考代码那里从for循环那里开始到if语句结束看不懂

正在回答

2 回答

for里边能看懂吧!!!if是条件语句,就是拿第一个值当作最大的,所有的数跟他比较一次。谁最大谁就是max。同理,min也是。。。。。理解了没有?

0 回复 有任何疑惑可以回复我~
#1

慕仰6415499 提问者

非常感谢!
2016-11-01 回复 有任何疑惑可以回复我~

在数组中求最大值和最小值。if 那一块的用法是固定套路

开始先假设了一个最大值,和最小值

int max=nums[0];//题中是假设数组中的第一个值为最大值,其实假设数组中的任何一个数为最大都可以的。而假设nums[0]是确保该数在数组中肯定会存在,方便使用

int min=nums[0];//同理

因为要比较大小得出最值。肯定是要拿数来一个个比,这样绝逼用到循环了。

for(int i=0; i<nums.length; i++){//定义变量i的初始值为0,i最大值根据数组有几个元素而定,i<nums.length;是固定用法,让i自增。这样数组中元素会在循环中重头到尾依次出现

//下面就是让他们依次出现和之前定义的最大值最小值做比较

假如数组中第一个元素大于我们假设的最大值,那最大值就是第一个

然后返回去继续循环,出现第二个元素,和刚刚的最大值比较,确定谁是最大,max就是谁,在返回去循环。出现第三个元素,和刚刚的最大值比较,确定谁最大,一直到循环结束

if(nums[i]>max){//就是根据变量i的变化依次和max做比较,

max=nums[i];也就是变量i所代表的某个数时比之前那个max大的时候就赋值给新的max

}


}

2 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

求知道这题参考代码为什么用if他会一直循环?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信