0
点赞
收藏
分享

微信扫一扫

小鱼比可爱

勇敢的趙迦禾 2022-02-03 阅读 52
其他游戏

一些比较生动的案例,终于可以摆脱冷冰冰的电话簿了😂

自我错误:

        1双循环结构的思考迟钝,没有创建新数组,没有按规定来的输出格式

思路历程:

        打开题目,在看到这么一大串的文字后,心寒了一阵。

        但是所谓要从繁琐的信息中抽象出本质,从本质信息去回归到理论案例,集诸多案例理解才能成为自己的实学。

        1、抽象:首先鱼儿是从左至右拍成一列的,比可爱就是数值的判断,特点是只能和自身前面的所有逐个比较,找出比自身小的。        (蒟蒻的归纳能力,勿喷つ﹏⊂

        2、回归:综上,联想自己学过的知识点------一列、元素判断、双循环模板、比较条件的引入

                        ps:双循环模板:这个是我在初学排序的时候发现的,第一个循环可以理解为几趟,第二个循环理解为一趟循环多少次;

                             在这里可以适当变形成:用第一个循环的条件固定一个元素,第二个循环用来遍历该元素下标之前的所有元素(第二个循环的循环条件得是个变量,通常为第一个循环的指示值i,使遍历指定元素之前所有元素这个操作可以保证全面性,即随着“指定的固定值”的变化而发生相同的变化。)        在很多地方也会应用到这个模板,如排序,大数字遍历等等。

                5555,我也不知道我讲了个啥,如果实在不懂,可以自己研究一下这个方向。つ﹏⊂

        3、感想:但是事实上,还是需要一些细节的学习经验积累。例如按照前面1、2步骤还是会掉坑里的(需要一个独立的新数组存放)

        4、拓展:目前阅历太少,先鸽了。QAQ

#include<stdio.h>
int main() {
	int a[110] ,b[110];
	int n, i, j;
	int count ;
	scanf("%d", &n);
	for (i = 0; i < n; i++) {
		scanf("%d", &a[i]);
	}
	for (i = 0; i < n; i++) {		
		for (j = 0, count = 0; j < i; j++) {
			if (a[i] > a[j]) {			
				count++;
			}
		}
		b[i] = count;
	}
	for (i = 0; i < n; i++) {
		printf("%d ", b[i]);
	}
return 0;
}

知识点涉及:

        ①后比前、全:数组的渐增下标的元素与前面的元素循环比较,(双循环模板实现)

        ②新数组去存储计量数count,(不能图方便使用a[i],后面的比较还是需要逐一往前面的元素比较的)

错误纠正:

        1、一定一动,整体呈现动,第二循环的全面性。(第二循环需要从0遍历   ps:在选择循环中则是一前一后的循环初始值)

        2、存储量和可变量的规范命名和管理,可以避免信息的混乱。(这里先不介绍了,你说为什么?因为我根本还不会!!doge

第一次写文章,欢迎各位大佬指正或提出建议。

举报

相关推荐

0 条评论