⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 strcompare.cpp

📁 《数据结构》所有相关程序的算法。有图、数组以及二叉数的问题。附有程序及结果。
💻 CPP
字号:
//StrCompare.cpp
//Compare two string

#include <stdio.h>
#include <conio.h>
#include <malloc.h>
#include <iostream.h>
#define MAXSIZE_S 40
#define MAXSIZE_T 40

typedef struct
{	char * ch;
	int length;
}HString;

int StrCompare(HString S,HString T)                     //StrCompare() function   
{//Compare string S and T from the first char on until no equal
    int i;                     							//if S[i]<T[i] then S<T,and return <0;
	for(i=0;i<S.length&&i<T.length;++i)			    	//if String S.length=T.length && all char are equal then S=T,return =0
	if (S.ch[i]!=T.ch[i]) return S.ch[i]-T.ch[i];       //if S[i]>T[i] then S>T and return >0
	return S.length-T.length;
}//end of StrCompare() function                         

int StrAssign(HString &S,char * chars)                   //StrAssign() function
{                                                        //create a string T=chars
	int i=0,j;
	char *c;
	if(S.ch) free(S.ch);                                 //dispose(T)
	for(c=chars;c[i]!='\0';i=i+1);
									                     //i get the length of chars
	if(!i)
	{S.ch=NULL;S.length=0;}                              //if i==0 then set String T NULL
    else
		{
		  if(!(S.ch=(char *)malloc(i*sizeof(char))))
			{ cout<<"OVERFLOW!"<<endl;
		      return (0);
			}
		   else
			{  for(j=0;j<=i-1;j++)
			      S.ch[j]=chars[j];
		       S.length=i;
		   }                                             //end of else
	}                                                    //end of else
	return(1);
}//end of StrAssing(0 function

void main()
{
   char charsS[MAXSIZE_S];                              //user define here
   char charsT[MAXSIZE_T];
   HString S,T;
   cout<<"StrCompare.cpp"<<endl<<"=============="<<endl;
   cout<<endl<<"Please input the string S: <eg. Beijing> ";
   cin>>charsS;
   cout<<"Please input the string T: <eg. Beihai> ";
   cin>>charsT;
   StrAssign(S,charsS);
   StrAssign(T,charsT);
   cout<<endl<<"String Compare result: "<<StrCompare(S,T)<<endl;
   cout<<"...OK!..."<<endl;
   getch();
}


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -