C语言如何实现数组逆序排列算法?
- 内容介绍
- 文章标签
- 相关推荐
本文共计752个文字,预计阅读时间需要4分钟。
本节介绍一种将数组逆置的实现方法。所谓逆置,即将数组元素中的数据颠倒过来。具体实现方法如下:
# include <stdio.h>
int main(void)
{
int a[5] = {1, 2, 3, 4, 5};
int b[5]; //用来存放倒置后的数据
int i, j;
for (i=0, j=4; i<5, j>=0; ++i, --j)
{
b[i] = a[j];
printf("%d\n", b[i]);
}
return 0;
}
输出结果是:
5
4
3
2
1
此程序中,for 循环括号中的写法是正确的。前面讲过,for 循环的格式为:
for (表达式1;表达式2;表达式3)
这只是一般的形式。以表达式 1 为例,它是一个“整体”,它可以是一个表达式,也可以是多个表达式,如果是多个表达式就用逗号隔开,如程序中那样。但是如果表达式间用分号隔开就不能看成一个“整体”,即只能看成一个表达式了,如上面的“表达式 1;表达式 2;表达式 3”。但是上面这个程序还不能称得上完美。
本文共计752个文字,预计阅读时间需要4分钟。
本节介绍一种将数组逆置的实现方法。所谓逆置,即将数组元素中的数据颠倒过来。具体实现方法如下:
# include <stdio.h>
int main(void)
{
int a[5] = {1, 2, 3, 4, 5};
int b[5]; //用来存放倒置后的数据
int i, j;
for (i=0, j=4; i<5, j>=0; ++i, --j)
{
b[i] = a[j];
printf("%d\n", b[i]);
}
return 0;
}
输出结果是:
5
4
3
2
1
此程序中,for 循环括号中的写法是正确的。前面讲过,for 循环的格式为:
for (表达式1;表达式2;表达式3)
这只是一般的形式。以表达式 1 为例,它是一个“整体”,它可以是一个表达式,也可以是多个表达式,如果是多个表达式就用逗号隔开,如程序中那样。但是如果表达式间用分号隔开就不能看成一个“整体”,即只能看成一个表达式了,如上面的“表达式 1;表达式 2;表达式 3”。但是上面这个程序还不能称得上完美。

