编程语言
首页 > 编程语言> > 【C++指针题目】动态分配数组元素替换

【C++指针题目】动态分配数组元素替换

作者:互联网

Description

首先输入数组元素的个数n,然后使用new分配一个整型数组,依次输入n个元素的值,按格式要求输出数组元素,将数组中值小于0的元素替换为0,最后输出替换后的数组,注意程序必须用指针实现,不能用下标变量的形式

Input

输入有2行,第1行为一个整数,即数组元素个数,第2行依次输入数组元素的值,每个数据之间用空格分开

Output

输出有2行,第1行输出原数组的元素,第2行输出替换后的数组元素,具体格式见Sample Output

Sample Input

5

2 -3 6 -8 9

Sample Output

a[5]={2,-3,6,-8,9}

a[5]={2,0,6,0,9}

题解

 

 1 #include<iostream>
 2 using namespace std;
 3 int main()
 4 {
 5     int n;
 6     cin>>n;
 7     
 8     int *p = new int[n];           //动态内存分配 
 9     
10     for(int i=0;i<n;i++) cin>>p[i];//输入 
11     
12     cout<<"a["<<n<<"]={"<<p[0];
13     for(int i=1;i<n;i++)    cout<<","<<p[i];
14     cout<<"}"<<endl;               //输出 
15     
16     for(int i=0;i<n;i++)
17         if(p[i]<0) p[i]=0;         //替换数组元素 
18     
19     cout<<"a["<<n<<"]={"<<p[0];
20     for(int i=1;i<n;i++)    cout<<","<<p[i];
21     cout<<"}"<<endl;               //输出
22     
23   delete []p;//释放动态内存 24 return 0; 25 }

 

 注意最后要释放动态内存~

 

 

标签:动态内存,int,元素,C++,Sample,动态分配,数组,Output,指针
来源: https://www.cnblogs.com/sparse-shadow/p/16365828.html