发布网友 发布时间:2022-04-28 11:02
共4个回答
热心网友 时间:2023-10-01 20:22
最后一行 printf("%d ",a[i]); 后面应该有个“}”才对这个程序是对的,在a[11]这个数组里只有a[0]~a[9]这10个元素第一个for循环与第二个for循环构成嵌套,第一次循环结束找出a[0]~a[9]里最大的数,第二次结束找出a[1~a[9]]里最大的数,第三次找出a[2]~a[9]里最大的数,……这样依次类推,其实就是一个选择排序!程序中变量 p q 交替记录最大数的下标和最大数的值。这并不是一个难懂的程序,有一定基础的应该都能弄懂的。或者你回去看看有关选择排序的程序实例。这只是大致的内容,别的不需要多讲应该可以看明白的。热心网友 时间:2023-10-01 20:22
1. 外层循环从第一个数开始,刚开始保存此次循环的第一个元素的下标和元素值;2. 内存循环从第二个数开始,每个数与前一个数进行比较,如果出现“顺序”,则记录当前元素的下标和元素值。当当前循环进行完的时候,判断外层循环开始记录的下标和循环出现顺序的元素的下标值是否相等:如果相等,则不需要交换位置;否则,调换两个元素的位置。3. 之后两层循环都后移一位,重复上面的动作,直到比较结束。热心网友 时间:2023-10-01 20:23
恩,实践最容易说话了。学习年龄不是问题,要上劲而且逻辑清晰就行,上高中接触学一些QB类似的东西。貌似没什么用真正接触C,java还是在大专热心网友 时间:2023-10-01 20:23
程序是对的。用的是最简单的冒泡法 。呵呵,很基础很基础的问题哦 。 你可以自己在图纸上演算下过程,这样比我跟你讲的直观。