* Copyright (c) 2012, 烟台大学计算机学院
* All rights reserved.
* 作 者:庄子豪
* 完成日期:2012 年 12月23日
* 版 本 号:v1.0
*
* 输入描述:
* 问题描述:
* 程序输出:
* 问题分析:
*算法设计
#include <iostream>
using namespace std;
int astrcmp(const char str1[], const char str2[]);
int pstrcmp(const char *str1,const char *str2);
int main(void)
{
char str1[100]="ni shi da chun lv !";
char str2[100]="ni shi yi tou da chun lv !";
int k,i;
k=astrcmp(str1,str2);
if(k==0)
{
cout<<"两个字符串一样长!"<<endl;
}
if(k==1)
{
cout<<"字符串较长的是 str1:";
for(i=0;str1[i]!='\0';i++)
{
cout<<str1[i];
}
cout<<endl;
}
if(k==-1)
{
cout<<"字符串较长的是 str2:";
for(i=0;str2[i]!='\0';i++)
{
cout<<str2[i];
}
cout<<endl;
}
k=pstrcmp(str1,str2);
if(k==0)
{
cout<<"两个字符串一样长!"<<endl;
}
if(k==1)
{
cout<<"字符串较长的是 str1:";
for(i=0;str1[i]!='\0';i++)
{
cout<<str1[i];
}
cout<<endl;
}
if(k==-1)
{
cout<<"字符串较长的是 str2";
for(i=0;str2[i]!='\0';i++)
{
cout<<str2[i];
}
cout<<endl;
}
return 0;
}
int astrcmp(const char str1[], const char str2[])
{
int i,j;
for(i=0;str1[i]!='\0';i++)
{
}
for(j=0;str2[j]!='\0';j++)
{
}
if(i==j)
return 0;
if(i>j)
return 1;
if(i<j)
return -1;
}
int pstrcmp(const char *str1,const char *str2)
{
const char *p;
int i,j;
for(p=str1;*p!='\0';p++,i++)
{
}
for(p=str2;*p!='\0';p++,j++)
{
}
if(i==j)
return 0;
if(i>j)
return 1;
if(i<j)
return -1;
}