哪位大师给帮忙做个程序啊。。。(移动问题)
写一个程序实现对长度为n的整型数组向左移动一个位置。1).形参不加const;
2).形参加const.
谢谢啦。。。。。。
#include<iostream> using namespace std; const int n=10; void changeleft(int a[],int n); void show(int a[],int n); void main() { int a[n]={1,2,3,4,5,6,7,8,9,10}; changeleft(a,n); show(a,n); } void changeleft(int a[],int n) { for(int i=1;i<n;i++) a[i-1]=a[i]; } void show(int a[],int n) { for(int i=0;i<n;i++) cout<<a[i]; cout<<endl; }加const
#include<iostream> using namespace std; const int n=10; int* changeleft(const int a[],const int n); void show(const int a[],const int n); void main() { int a[n]={1,2,3,4,5,6,7,8,9,10}; show(changeleft(a,n),n); } int* changeleft(const int a[],const int n) { int b[::n]={0}; for(int i=0;i<n;i++) b[i]=a[i]; for(int i=1;i<n;i++) b[i-1]=a[i]; return b; } void show(const int a[],const int n) { for(int i=0;i<n;i++) cout<<a[i]; cout<<endl; }
#include<iostream> using namespace std; const int n=10; int* changeleft(const int a[],int b[],const int n); void show(const int a[],const int n); int b[n]={0}; void main() { int a[n]={1,2,3,4,5,6,7,8,9,10}; show(changeleft(a,b,n),n); return; } int* changeleft(const int a[],int b[],const int n) { for(int i=0;i<n;i++) { b[i]=a[i]; } for(int j=1;j<n;j++) { b[j-1]=a[j]; } return b; } void show(const int a[],const int n) { for(int i=0;i<n;i++) cout<<a[i]; cout<<endl; }如果你觉得这样做不符合题目要求,那么也可以直接这样
#include<iostream> using namespace std; const int n=10; void changeleft(const int a[],const int n); int b[n]={0}; void main() { int a[n]={1,2,3,4,5,6,7,8,9,10}; changeleft(a,n); return; } void changeleft(const int a[],const int n) { int b[::n]={0}; for(int i=0;i<n;i++) { b[i]=a[i]; } for(int j=1;j<n;j++) { b[j-1]=a[j]; } for(int k=0;k<n;k++) { cout<<b[k]; } cout<<endl; } //也可以将show函数定义到changeleft前面并在changeleft函数里面调用show函数,方法有很多,美女给个分儿VC6.0对模扳的支持没2005好,所以编译我都喜欢用2005