2009-09-13
c语言的调用问题(数据结构与算法
刚开始做的时候没看清题目。用C++语句测试了,不过没关系。所有的cout语句都是输出,你把所有的Cout语句改成printf语句然后把enum改成define几个常量就可以了,头文件删掉换成stdio。 h这个程序的调用顺序必须先InitTriplet,最后DestroyTriplet;具体意思你结合结果看一下:程序:#include#includeusingnamespacestd;typedefintElemtype,*Triplet;typedefintstatus;#defineOVERFLOW0#defineOK1#defineERROR2statusInitTriplet(T...全部
刚开始做的时候没看清题目。用C++语句测试了,不过没关系。所有的cout语句都是输出,你把所有的Cout语句改成printf语句然后把enum改成define几个常量就可以了,头文件删掉换成stdio。
h这个程序的调用顺序必须先InitTriplet,最后DestroyTriplet;具体意思你结合结果看一下:程序:#include#includeusingnamespacestd;typedefintElemtype,*Triplet;typedefintstatus;#defineOVERFLOW0#defineOK1#defineERROR2statusInitTriplet(Triplet&T,Elemtypev1,Elemtypev2,Elemtypev3){T=(Elemtype*)malloc(3*sizeof(Elemtype));if(!T)exit(OVERFLOW);T[0]=v1;T[1]=v2;T[2]=v3;returnOK;}statusDestroyTriplet(Triplet&T){free(T);T=NULL;returnOK;}statusGet(TripletT,inti,Elemtype&e){if(i3)returnERROR;e=T[i-1];returnOK;}statusput(Triplet&T,inti,Elemtypee){if(i3)returnERROR;T[i-1]=e;returnOK;}statusisAscending(TripletT){return(T[0]=T[1])&&(T[1]>=T[2]);}statusMax(TripletT,Elemtype&e){e=(T[0]>=T[1])?((T[0]>=T[2])?T[0]:T[2]):((T[1]>=T[2])?T[1]:T[2]);returnOK;}statusMin(TripletT,Elemtype&e){e=(T[0]<=T[1])?((T[0]<=T[2])?T[0]:T[2]):((T[1]<=T[2])?T[1]:T[2]);returnOK;}intmain(void){Elemtypee1=4,e2=5,e3=3,eTemp;Triplett;cout