循环结构-4
循环结构24:n个整数的最大值和最小值 :
1.先读入n,再读入第一个数,并用这个数为max和min赋初值。
2.用一个for循环读入剩下的数字,注意应该从1到n-1,因为刚才已经读入了一个数,接下来每读入一个数字,判断max是否小于这个数字,如果这个数字大于max,则更新max的值为这个数字,min同理。
3.输出按照格式max和min。
7-25 循环结构25:若干个整数的最大值和最小值 :
1.思路与上一题类似,只是细节差别,不确定次数的循环,我们最好用while,仍然是先读入一个数字,为max和min赋初值。
2.题目要求最后输入的-10000不作为统计对象,所以读入的数字x为-10000后,我们应该跳出循环,所以将循环条件定为x!=-10000,循环应该里先写max和min的更新操作,再将x读入,第一次的x已经在循环外读入,保证每次的x都是作为下一次循环里判断是不是要更新的值。
3.输出按照格式输出max和min。
7-31 循环结构31:倒序输出 :
1.首先需要注意的是倒序输出每个数字,而不是输出倒序后的数字,有一个测试点会卡这种算法。
2.读入数字n,然后每次通过模十取余分离出最后一位,然后输出这个数字就好。
3.输出可能为0,需要单独判断,如果是0则输出0就好。
3.用一个while循环,循环条件,判断n是否大于0,通过定义一个变量,变量的值为n对10取余的结果,然后输出这个值,n通过/10抹去原来的个位,不断循环这个过程就好。
7-32 循环结构32:同构数 :
1.读入一个区间,判断这个区间里的每个数是不是同构数即可。
2.如果i出现在i*i的右侧,那么容易得到i*i-i与i位数相同的部分应该都是0,例如i=25,i*i=625,i*i-i=600,i是两位数,相应的最后两位都是0,通过取余操作判断这部分数字是不是0即可,不能是对10取余,对10取余只能提取出个位,容易举出反例,i=10时会出现问题,所以应该用哪个数字取余需要思考一下。
3.记得用一个flag判断有没有输出过数字,如果没有输出过数字,那就输出no
7-33 循环结构33:零件分组 :
1.没什么难度,从1不断枚举,直到出现符合要求的数字,输出然后break即可。
7-34 循环结构34:输出满足条件的数 :
1.读入n,从1开始遍历到n,判断是否满足要求,满足要求就用%5d输出
2.用一个count记录输出数字的个数,每次输出count++,每次输出完判断count%10是否等于0,如果等于0,那就输出一个换行。

浙公网安备 33010602011771号