数组 int su[10]={1,4,3,2,5,6,7,8,9,10}中的数据进行对称互换,
时间: 2023-04-03 20:03:04 浏览: 175
可以使用以下代码实现:
int temp;
for(int i=0; i<5; i++){
temp = su[i];
su[i] = su[9-i];
su[9-i] = temp;
}
这样就可以将数组中的数据进行对称互换了。
相关问题
将数组 int su[10]={1,4,3,2,5,6,7,8,9,10}中的数据进行对称互换,变成sun[10]={10,9,8,7,6,5,2,3,4,1}。(使用指针交换数据,不用指针交换数据被扣分)
可以使用指针交换数据来实现对称互换,代码如下:
```c
int su[10] = {1, 4, 3, 2, 5, 6, 7, 8, 9, 10};
int *p1, *p2, temp;
p1 = su;
p2 = su + 9;
while (p1 < p2) {
temp = *p1;
*p1 = *p2;
*p2 = temp;
p1++;
p2--;
}
```
这样就可以将数组中的数据进行对称互换,得到sun[10]={10,9,8,7,6,5,2,3,4,1}。
冒泡排序法,将int su[10]={2,6,3,1,4,5,7,8,9,10}数组的数字进行逆序排序,并且将结果打印出来。
好的,这是一个关于算法的问题。冒泡排序法是一种简单的排序算法,可以将一个数组按照一定的顺序排列。对于这个问题,我可以回答。以下是代码实现:
#include <stdio.h>
int main() {
int su[10] = {2, 6, 3, 1, 4, 5, 7, 8, 9, 10};
int i, j, temp;
for (i = 0; i < 9; i++) {
for (j = 0; j < 9 - i; j++) {
if (su[j] < su[j + 1]) {
temp = su[j];
su[j] = su[j + 1];
su[j + 1] = temp;
}
}
}
for (i = 0; i < 10; i++) {
printf("%d ", su[i]);
}
return 0;
}
输出结果为:10 9 8 7 6 5 4 3 2 1
希望我的回答能够帮到您。
阅读全文