C/C++复习:字符串的比较

</pre><pre name="code" class="cpp">/*
 *Copyright(c)2016,烟台大学计算机与控制工程学院
 *All right reserved.
 *文件名称:77.cpp
 *作    者:董凯琦
 *完成日期:2016年4月22日
 *版 本 号:v1.0
 *
 *问题描述:写一函数,实现两个字符串的比较。即自己写一个strcmp函数,函数原型为
int stringcmp(char *p1,char *p2);
设p1指向字符串s1,p2指向字符串s2。要求当s1=s2时,返回值为0,若s1≠s2,返回它们二者第1个不同字符的ASCII码差值(如"BOY"与"BAD",第2个字母不同,"O"与"A"之差为79-65=14)。如果s1>s2,则输出正值,如s1<s2,则输出负值。

 *输入描述:两个字符串
 *程序输出: 比较结果
 */
#include <iostream>
#include <cstring>
using namespace std;
int stringcmp(char *p1,char *p2)
{
    while(*p1||*p2)
    {
            if(*p1!=*p2)   //判断两字符串中的字母是否相等
            return(*p1-*p2);
            else
        {
            p1++;
            p2++;
        }
    }
    return 0;
}
int main()

{

    int stringcmp(char *,char *);

    int m;

    char str1[80],str2[80],*p1,*p2;

    cin>>str1;

    cin>>str2;

    p1=&str1[0];  //指针指向字符串的首地址

    p2=&str2[0];

    m=stringcmp(p1,p2);//调用字符串比较函数

    cout<<m<<endl;

    return 0;

}


}

你可能感兴趣的:(C/C++复习:字符串的比较)