请问 利用指针实现将5个整数输入到数组a中,然后将a逆序复制到数组b中,并输出b中各单元的值。怎么做呀,谢谢了

时间:2022-09-14 20:55:37
利用指针实现将5个整数输入到数组a中,然后将a逆序复制到数组b中,并输出b中各单元的值

7 个解决方案

#1


这个用for语句和数组指针的知识,在加上输入输出语句就够了啊。
逆序也比较简单
for(int i = 0;i<5;i++)
 b[i]=a[4-i];//因为是0到4
其他就不多说了,自己看下书就应该会的。

#2


int a[5],b[5],i = 0;
int *p = a;
while(i < 5) 
{
 cin >> p++;
 i++;
}


for(p = &a[4],i = 0; i < 5;)
{
  b[i] = *p;
  cout << b[i] << '\t' << endl;
  p--;
  i++;
}

本人也刚开始看c++,程序写的不好,请多指教。

#3


这个比较基础,看看书就会了

#4


[img=c:\QQ截图未命名][/img]
 顶

#5


谢了

#6



#include <iostream> 
using namespace std; 
int main() 

    int a[5],b[5],i = 0; 
    int *p = a; 
    while(i < 5) 
    { 
    cin >> *p++; 
    i++; 
    }     
    for(p = &a[4],i = 0; i < 5;) 
    { 
      b[i] = *p; 
      cout << b[i] << '\t' << endl; 
      p--; 
      i++; 
    } 
    system("pause");


整理了一下。

#7


#include "stdio.h"
#define N 5

//主函数,程序执行的入口处
void main()
{

int a[N];//定义五个整型的数组
int b[N];
int *ptr=NULL;
int i=NULL;

ptr=a;//将数组a的首地址送给指针ptr;

printf("请输入%d个整数:\n",N);
//循环输入
for(i=0;i<N;i++,ptr++)
{
scanf("%d",&*ptr);
}
//逆序复制到数组b中
for(i=0;i<N;i++)
{
b[i]=a[N-i-1];
}
//输出b数组中各元素的值
printf("数组b中各元素的值为:\n");
for(i=0;i<N;i++)
{
printf("%d ",b[i]);
}
printf("\n");
}

#1


这个用for语句和数组指针的知识,在加上输入输出语句就够了啊。
逆序也比较简单
for(int i = 0;i<5;i++)
 b[i]=a[4-i];//因为是0到4
其他就不多说了,自己看下书就应该会的。

#2


int a[5],b[5],i = 0;
int *p = a;
while(i < 5) 
{
 cin >> p++;
 i++;
}


for(p = &a[4],i = 0; i < 5;)
{
  b[i] = *p;
  cout << b[i] << '\t' << endl;
  p--;
  i++;
}

本人也刚开始看c++,程序写的不好,请多指教。

#3


这个比较基础,看看书就会了

#4


[img=c:\QQ截图未命名][/img]
 顶

#5


谢了

#6



#include <iostream> 
using namespace std; 
int main() 

    int a[5],b[5],i = 0; 
    int *p = a; 
    while(i < 5) 
    { 
    cin >> *p++; 
    i++; 
    }     
    for(p = &a[4],i = 0; i < 5;) 
    { 
      b[i] = *p; 
      cout << b[i] << '\t' << endl; 
      p--; 
      i++; 
    } 
    system("pause");


整理了一下。

#7


#include "stdio.h"
#define N 5

//主函数,程序执行的入口处
void main()
{

int a[N];//定义五个整型的数组
int b[N];
int *ptr=NULL;
int i=NULL;

ptr=a;//将数组a的首地址送给指针ptr;

printf("请输入%d个整数:\n",N);
//循环输入
for(i=0;i<N;i++,ptr++)
{
scanf("%d",&*ptr);
}
//逆序复制到数组b中
for(i=0;i<N;i++)
{
b[i]=a[N-i-1];
}
//输出b数组中各元素的值
printf("数组b中各元素的值为:\n");
for(i=0;i<N;i++)
{
printf("%d ",b[i]);
}
printf("\n");
}