蓝桥杯 算法提高 11-1 实现strcmp函数 (C语言实现,指针实现)

问题描述

  自己实现一个比较字符串大小的函数,也即实现strcmp函数。函数:int myStrcmp(char *s1,char *s2) 按照ASCII顺序比较字符串s1与s2。若s1与s2相等返回0,s1>s2返回1,s1<s2返回-1。具体来说,两个字符串自左向右逐个字符相比(按ASCII值大小相比较),直到出现不同的字符或遇'\0'为止(注意'\0'值为0,小于任意ASCII字符)。如:
  "A"<"B"
  "a">"A"
  "computer">"compare"
  "hello"<"helloworld"

样例输出

数据规模和约定

  字符串长度<100。

#include<iostream>
#include<cstdio>
#include<cstring>
#include<string>
#include<algorithm>
#include<queue>
#include<map>
#include<vector>
#include<stack>
using namespace std;

int myStrcmp(char *s1,char *s2)
{
	int num = 0;
	while (  !(num = (*s1 - *s2))  && *s1 )
	{
		++s1;
		++s2;
	}
	if (num==0)
	return 0;
	else if (num<0)
	return -1;
	else
	return 1;
}

int main()
{
	char s1[100],s2[100];
	while (~scanf("%s %s",s1,s2))
	{
		printf("%d\n",myStrcmp(s1,s2));
	}
	
	
	return 0;
}

 

posted @ 2019-02-03 15:57  RomanticChopin  阅读(289)  评论(0编辑  收藏  举报
-->
Live2D