原来存的是1到10
反转后存的是10到1
目的达到。
追问还有其他办法么?
追答这是最有效的方法,还有个方法就是
再用一个数组,倒序存原来的数组的值,再存回来。这样的话,时间就浪费了。
可以把控制输出的循环变量递减呀
这个我不知道为什么只打印了一个数?
1 输入数组。
2 遍历数组前半部分,将每个元素,与后半部分对称位置交换值。
3 输出结果。
代码:
int main()但是在屏幕上只打印了一个数
追答#include "stdio.h"
int main()
{
float a[10]={0};
int i;
printf("请输入10个数:\n");
for(i=0;i<10;i++)
scanf("%f",&a[i]);
printf("反转后输出:\n");
for(i=9;i>=0;i--)
printf("%0.0f ",a[i]);
printf("\n");
}
为什么只输出了一个数?
追答楼主 你把数组定义成浮点型的,printf输出那里也是弄成浮点型的 用 %0.0f 这个格式;问题就解决了,但是为什么是这样,我也说不清楚,前段时间我做个矩阵的LU分解时发现的。我这样做就行得通了,作业也交了,但是原因真不知道。