将一个数组中的值按逆序重新存放。例如8,6,5,4,1要求改为1,4,5,6,8.

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了将一个数组中的值按逆序重新存放。例如8,6,5,4,1要求改为1,4,5,6,8.相关的知识,希望对你有一定的参考价值。

不能用输入输出方法!要求用循环+数组的方法。

参考技术A LENGTH = ARRAY1.LENGTH;
FOR(INT I=0;I<LENGTH;I++)
ARRAY2[i] = array1[LENGTH-i-1];
参考技术B 如果允许在循环中使用中间变量,假定数组为int型数组,使用java语言描述如下:
int [] arr = 1, 2, 3, 4, 5, 6, 7, 8, 9;//数组
int temp = 0; //中间变量
for(int i=0; i<arr.length/2; i++)
temp = arr[i];
arr[i] = arr[arr.length-1-i];
arr[arr.length-1-i] = temp;

然后你试试把他们显示出来看看是不是逆序的了。
-----------------------
若不使用中间变量亦可:
for(int i=0; i<arr.length/2; i++)
arr[i] = arr[i] + arr[arr.length-1-i] - (arr[arr.length-1-i]=arr[i]);
本回答被提问者采纳

将一个数组的值按逆序重新存放,例如,原来顺序为:8,6,5,4,1。要求改为:1,4,5,6,8。填空

#include<stdio.h>
main()
int i,b[10];
for(i=0;________;i++)
scanf("_________",________);
for(i=9;i>-1;i--)
printf("%5d",__________);
printf("\n");

#include<stdio.h>

int  main()

int a[5]=8,6,5,4,1,i,n=5,temp;

for(i=0;i<n/2;i++)

temp=a[i];

a[i]=a[n-i-1];

a[n-i-1]=temp;          

                 

for(i=0;i<n;i++)

printf("逆序后:\\n");       

printf("%d\\t",a[i]);        

               

return 0;

扩展资料:

数组使用规则:

1.可以只给部分元素赋初值。当 中值的个数少于元素个数时,只给前面部分元素赋值。例如:static int a[10]=0,1,2,3,4;表示只给a[0]~a[4]5个元素赋值,而后5个元素自动赋0值;

2.只能给元素逐个赋值,不能给数组整体赋值。例如给十个元素全部赋1值,只能写为:static int a[10]=1,1,1,1,1,1,1,1,1,1;而不能写为:static int a[10]=1;

3.如不给可初始化的数组赋初值,则全部元素均为0值;

4.如给全部元素赋值,则在数组说明中, 可以不给出数组元素的个数。例如:static int a[5]=1,2,3,4,5;可写为:static int a[]=1,2,3,4,5;动态赋值可以在程序执行过程中,对数组作动态赋值。这时可用循环语句配合scanf函数逐个对数组元素赋值。

参考资料:

百度百科-数组

参考技术A

这个题应该是最简单的C语言输入输出,以前循环逻辑控制了,要想学得好,要多上机编写程序练习~~

#include<stdio.h>

main() 

 int i,b[10]; 

for(i=0;i<10;i++) 

scanf("%d",&b[i]); 

for(i=9;i>-1;i--) 

printf("%5d",b[i]); 

printf("\\n");

参考技术B main()
{int i,a[5];
for(i=0;i<=4;i++)
a[i]={8,6,5,4,1};
for(i=4;i>=0;i--)
{printf("%d",a[i]);}
printf("\n");
return 0;
参考技术C #include<stdio.h>
main()
int i,b[10];
for(i=0;i<10;i++)
scanf("%d ", &b[i]);
for(i=9;i>-1;i--)
printf("%5d", b[i]);
printf("\n");追问

5、输入年月日,输出这一天是本年度的第几天。
main()
int find(int x,int y,int z)
int i,t,s,days=0;
if(x%4==0) t=1;
else t=0;
for(i=1;i<y;i++)
if(i==2) s=2-t;
else s=0;
days=days+30+i%2-s;

days=days+z;
return days;
void main()
int year,month,date,day;
scanf("%d%d%d",&year,&month,&date);
day=find(year,month,date);
printf("这一天是本年的第%d 天\n",day);

本回答被提问者采纳
参考技术D c已经忘啦

以上是关于将一个数组中的值按逆序重新存放。例如8,6,5,4,1要求改为1,4,5,6,8.的主要内容,如果未能解决你的问题,请参考以下文章

如何将一个数组的值按逆序重新存放于原数组中,并输出。例如:原来顺序为3,6,5,4,9改为9,4?

如何将一个数组中的值按逆序排放

将一个数组中的值逆序存放

C语言,将一个数组中的值按逆序重新存放

将一个数组中的值按逆序重新存放:建立Map()函数实现N个整数按相反顺序存放,函数的形参是数组

将一个整型数组中的值逆序重新存放。用java编写