我创建函数来删除在 c++ 中相同的数组数据,因此使过程如下:
input:4
input:
25.50
64.25
64.25
25.50
output:
5.50
64.25
但是像这张图片的功能错误
这里的代码
#include <iostream>
using namespace std;
void removeSame(double a[int x]){
int index[x];
for(int z=0; z<x; z++){
jum[z]=0;
for(int c=0; c<x; c++){
if(a[c]==a[z]){
index[z]=c;
}
}
}
for(int z=0; z<x; z++){
if(z==index[z]){
cout<<a[z]<<endl;
}
}
}
int main(){
int n,x;
cin>>n;
double a[n];
for(x=0; x<n; x++){
cin>>a[x];
}
removeSame(a[x]);
return 0;
}
然后当我像这样更改代码时,再次发生错误
void removeSame(double a[], int x){
...
}
像这样的错误:
cannot convert 'double' to 'double*' for argument '1' to 'void hapusygsama(double*, int)'
请帮我
更新。谢谢所有回复我帖子的人
#include <iostream>
using namespace std;
void hapusygsama(double a[], int len){
int index[len];
for(int z=0; z<len; z++){
for(int c=0; c<len; c++){
if(a[c]==a[z]){
index[z]=c;
}
}
}
cout<<endl;
for(int z=0; z<len; z++){
if(z==index[z]){
cout<<a[z]<<endl;;
}
}
}
int main(){
int n,x;
cin>>n;
double a[n];
for(x=0; x<n; x++){
cin>>a[x];
}
hapusygsama(a, n);
return 0;
}