2192 - P563 2 6 7
完成P563页的2,6,7题。
客户端的代码可以是如下顺序,
5个Insert操作,
调用print操作,
2个replace操作,
调用print操作,
题目输入
52
66
77
77
99//5个输入的数据;
62 69
77 79//两组替换的数据
题目输出
52 66 77 99//第一次的输出结果
52 66 79 99//第二次的输出结果
输入/输出样例
题目输入
22 35 68 99 12 35 39 15 18
题目输出
22 35 68 99 12 22 39 68 99 12
C++解答
#include<iostream> using namespace std; void rem(int num[],int i,int &j) { for(int o=i;o<j;o++) { for(int p=o+1;p<j;p++) { if(num[o]==num[p]) { j--; for(int w=p;w<j;w++) { num[w]=num[w+1]; } } } } } void insert(int num[],int a,int b,int i,int j) { for( ;i<j;i++) { if(num[i]==a) { num[i]=b; break; } } } int main() { int n=5,num[10]; for(int i=0;i<n;i++) cin >> num[i]; rem(num,0,n); for(int i=0;i<n;i++) { if(i==n-1) cout << num[i]; else cout << num[i] << ' '; } cout << endl; int a,b,m=2; for(int l=0;l<m;l++) { cin >> a >> b; insert(num,a,b,0,n); rem(num,0,n); } for(int i=0;i<n;i++) { if(i==n-1) cout << num[i]; else cout << num[i] << ' '; } cout << endl; return 0; }