明星汇贷:又一个c++程序 大家帮忙看一下

来源:百度文库 编辑:高考问答 时间:2024/05/09 13:07:01
#include<iostream.h>
template<calss T>
int st(T a[],int n);
template<class T>
void main(void){
int p[9]={5,7,13,2,3,9,8,1,6};
stt(c,11);
stt(p,9);
char c[12]="denominator";
}
template<class T>
int st(T a[],int n){
if(n==1){cout<<n<<",";
return n;};
int k=1;
while(a[k-1]<=a[k])
if(k<n)k++;
cout<<k;return k;
}
template<class T>
void stt(T a[],int n){
int k=st(a,n);
if(k==n){
cout<<endl;return;
}
int i,b{100};
for(i=0;i<n-k;i++)
b[i]=a[i+k];
stt(b,n-k);
}

帮忙弄一下这个程序 看看结果是什么 明天之前要交 我基本不会 希望再帮我讲一下 这个程序中定义的模板的具体功能 谢谢了!
啊 对 差点忘了 还有这个程序是什么功能 那个定义char c数组 有什么作用?

定义数组的内容吧
c语言学的时间长了,忘了

也许这个对你有启发

X之指针

上传日期:2005-4-28

X]r>

//第八章 指针

//Example8_1
[X]
#include
[X]
main()

{ int i,*p; [X]

p=&i;
[X]
*p=5;
[X]
cout<
cout<<*p<
cout<X];p<
cout<<&i<[X]
}

//Example8_2

#include X]r>
main()
[X]
{ int i1=10, i2=20, *p1, *p2, *p ;

p1=&i1; p2=&i2;
[X]
cout<<[X]"*p1="<<*p1<<'\t'<<"*p2="<<*p2< [X]
p=p1;

p1=p2; X]>
p2=p;

cout<<"*p1="<<*p1<<'\t'<<"*p2="&l[X]t;<*p2<
coutX];<" i= "<X]1<<'\t'<<" i2= "<[X]
cout<<"p1= "<X]amp;i1="<<&i1<<'\t'<<"*i2="<<&i2<
}
[X]
//Example8_3

#include

main()
[X]
{ int i1=10, i2=20, i, *p1, *p2 ;
[X]
p1=&i1; p2=&i2;
[X]
cout<<"*p1="<<*p1<<[X]'\t'<<"*p2="<<*p2< [X]
i=*p1;
[X]
*p1=*p2;

*p2=i;

cout&l[X]t;<"*p1="<<*p1<<'\t'<<"*p2="<<*p2<
cout<<"p1= "&l[X]t;i1="<<&i1X];<'\t'<<"&i2="<<&i2&l[X]t;
}

//Example8_4

#include
[X]
main()

{ int ****p1, ***p2, **p3, *p4, i=3 ;

p1=&p2; p2=&a[X]mp;p3; p3=&p4; p4=&i;

cout<<****p1<X]

p4--;

cout<<*p4< [X]
// p1=&p4;

// cout<<**p1<
}
[X]
//Example8_5

[X]#include

main()

{int a[5]={1,2,3,4,5};

i[X]nt *p1,*p2,num;

p1=&a[0];

p2=&a[3];

num=p2-p1;
[X]
cout<<"num="<
if (p2==p1) p2++;
[X]
cout[X]<<"*p2="<<*p2<
}

//Example8_6
[X]
#includeX]t;
[X]
main()

{int x=2, y ;

int *px=&a[X]mp;x;

*(px+1)=5;

y=*++px;

// y[X]=++*px;

cout<<"y="<
}
[X]
//Example8_7

#include X]>
m[X]ain()

{

int a[]={1,3,5,7,9}, i, *p ;

for(i=0; i<5; i++)[X]

cout<<"a["<X]-a<<"]="<<*p<<'\t';

cout<[X]
}

//Example8_8
[X]
#include

main()

{
X]>int a[5], i, *p ;

p=a;

for(i=0;i<5;i++,p++)
[X]
cin>>*p;

cout< [X]
p=a;

for(i=0; i<5; i[X]++,p++)

cout<<"a["<X]Sum= "<X]; [X]
cout<X]ision(2);

cout<<"Average="< [X]
}

// Example8_10
X]r>#include

v[X]oid main()

{ int a[3][5]={1,2,3,4,5,6,7,8,9,10,11,[X]12,13,14,15};

int *p;

for(p=a[0]; pX]p++)

cout<<*p<<" ";
[X]
cout<
for(p=*a; p<*a+15; p++)

cout<<*p&[X]lt;<" ";

cout<
for(int i=0; i<3; i++)

for(int j=[X]0; j<5; j++) [X]

cout<<*(a[i]+j)<<" ";

cout<
}
[X]
// Example8_11
[X]
#include

void main()

{ int [X]*p;

p=new int;

if (!p)

{ cout<<"allocati[X]on faiure\n"; return ; } X]>
*p=20;

cout<<"*p="<<*p<X]

delete p;

}
[X]
// Example8_12

#include

#includeX].h>

void main()

{[X] int *p;

p=new int(99);

if (p==NULL)

{ cout<X];"allocation faiure\n"; return ; }

cout<<"*p="<&l[X]t;*p<
delete p;
[X]
}

// Example8_13

#include
[X]
#include
[X]
void main()

{ float *ap;

int i, size ; X]>
cin>>size;

ap=new float [size];

if (ap==NULL)
[X]
{ cout<<"allocation faiure\n"; return ; }

for(i=0; iX]++)

ap[i]=100.00+i;

for(i=0; iX]

{ cout<<"ap["<X]lt;"]="<
for( i=0; i<10; i++)

cout<X]="<<*pmax<
p=new int; X]r>
*p=2000;

cout<<"*p="<<*p<
//[X] pmax=p;
[X]
p=pmax;

cout<<"*p2="&[X]lt;<*p<
*pmax=*[X]pmax+*p;

cout<<"max2="<<*pmax< [X]
}//Example8_17

#include
[X]
main()

{ const int min=10;
[X]
int max;

const int * const pmax=&max;

// *pm[X]ax=1000;

max=1000;

c[X]out<<"max="<<*pmax<
const int * const pmin=&min;
[X]
// pmin=&am[X]p;max;

// *pmin=0;

cout<<"min="<<*pmin<X]

}

//Example8_18

#include&l[X]t;iostream.h>

void test(int x[],int n)

{
X]r>for(int i=0 ; i
cout<< * x++ <<" ";
[X]
cout<
return ;

}
[X]
void main()

{ int a[10]={1,2,3,4,5,6,7,8,9,10};
[X]
// for(int j=0 ; j<10; j++)
[X]
// cout<< * a++ <<" ";

in[X]t *p=a;
[X]
for(int i=0 ; i<10; i++) X]r>
cout<< * p ++ <<" "; X]>
cout<
test(a,10);

}
[X]
//Example8_19

#includ[X]e
[X]
int sum(int array[],int n)
<[X]br>{ int m=0;

for(int i=0; i [X]
{ m+=*array; array++; }

return m;
[X] X]r>}

void main()

{ int a[10]={1,2[X],3,4,5,6,7,8,9,10};

cout<<"sum="< [X]
}

// Example8_20

#include X]>
#include

void main()

{ float *ap, *t[X]p;

int i, size ;
[X]
cin>>size; X]r>
ap=new float [size];

if (ap==NULL)[X]

{ cout<<"allocation faiure\n"; return ; }

for(i=0[X]; i [X]
ap[i]=100.00+i;

for(i=0,tp=ap; tpX]i++,tp++)

{ cout<<"ap["<X]wapping...\n";

cout<<"a="<X] b="<
}

void swap(int * x , int * y[X])

{ int temp=*x;
X]>*x=*y;
X]r>*y=temp;

}

//Example8_22

#include
[X]
#include

int * find(int a[],int n, int [X]x)

{ int i=0;

while(i
a++,i++;
[X]
if (i [X]
return a;

else return NULL;

}

void main()
[X]
{ int a[10]={1,2,3[X],4,5,6,7,8,9,10};

int * p, x ;

cout<<"find what number?\n";
[X]
cin>>x;

p=find(a,10,x);

if (p![X]=NULL)

cout<
else[X]

cout<<"not found!\n";

}

//Example8_23
[X]
#include

#i[X]nclude
[X]
void main()

{ char src[10]="123456789";
X]r>char dest[10];[X]

char * pc=(char *)memcpy(dest,src,10);
[X]
cout<<"src:"<
cout<<"pc:"<&l[X]t;pc<
cout<<[X]"dest:"<
}//Example8_24

#includeX]ream.h>

#include

#include
[X]
void main()

{ [X]

char one[10]="abcde";

ch[X]ar two[10]="ABCDE";

char * pc1, * pc2;

pc1=one;
[X]
pc2="abcde";

cout<<"one: "[X]<
cout<&[X]lt;"two_4: "<<*(two+3)[X]< [X]
cout<<"pc1==pc2: "<<(pc1==pc2)<
cout<<"one==two: "<&l[X]t;(one==two)<
if(strcmp(pc1,pc2)==[X]0)

cout<<"strpc1==strpc2: "< [X]
else cout<<"strpc1!=strpc2:"<
}
[X]
//Example8_25
[X]
#include

#include

#[X]include

void main()

{
[X]
char *name[5]={"Li Hua","He Xiao Ming","Zhang Li","Sun Fei","[X]Chen Bao"};

char in_name[20];

in[X]t i, flag=0;

cout<<"Enter your name:";

// cin>>in_name;
[X]
gets(in_name);

for(i=0; i<5; i++) X]>
if (strcmp(name[i],in_name)==0)

{ flag=1; break; }

if (flag==1)
[X] X]>cout< [X]
else

cout[X]<X]ur class.\n";
[X]
}

//Example8_26 X]r>
#inc[X]lude

#include
[X]
#include

void main()

{
[X]
char *name[5]={"Li Hua","He Xiao Min[X]g","Zhang Li","Sun Fei","Chen Bao"};

char **p1, **p2,*pt;

int i,j;
[X]
for(i=0; i<4[X]; i++, p1++)

{ p1=&name[i];

for (j=i+1; [X]j<5; j++, p2++)

{ p2=&name[j]; [X]

if(strcmp(*p1,*p2)>0)

{pt=*p1; *p[X]1=*p2; *p2=pt; }

}

}

p1=name;

for(i=[X]0;i<5; i++,p1++) [X]

cout<<"name["<X]ume = "<< vol [X]<< endl;

pf=volume; [X]

vol=(*pf)(r,h);

cout<<"Volume = "<< vol << endl;
[X]
}

//Example8_29
[X]
#include

int sum(int, int); X]r>
int produce(int, int); <[X]br>
main()

{ int (*pf)(int, int);[X]

int a,b,result;

cin >> a>>b;
[X]
pf=sum; [X]

result=(*pf)(a,b);

cout<bin("<in from 0.1 to 1.0 is : "X];
dsum=sigma(cos, 0.5, 3.0);

cout<<"the sum of cos fr[X]om 0.5 to 3.0 is : "<
}
[X]
//Example8_32
[X]
#include

void main(int argc, char * argv[])

{ int k=0[X];

while (k
{ co[X]ut<<"argv "<<k<<": "<<*argv++<X]l;

k++ ;

}

cout<<"argc="<<[X]argc<
}

[X]

[X]