8.17写一函数,实现两个字符串的比较。即自己写一个strcmp函数,函数原型为int strcmp(char *p1,char *p2);

//C程序设计第四版(谭浩强)
//章节:第八章 善于利用指针 
//题号:8.17
//题目:写一函数,实现两个字符串的比较。即自己写一个strcmp函数,函数原型为
//int strcmp(char *p1,char *p2);
//设p1指向字符串s1,p2指向字符串s2.要求当s1=s2时,返回值为0;若s1!=s2,返回它们二者第一个不同字符的ASCII码差值
//如"BOY"与"BAD",第2个字母不同,"O","A"之差为79-65=14)如果s1>s2,则输出正值;如果s1<s2,则输出负值。 
#include <stdio.h>
#include <string.h>
int strcmp(char *p1,char *p2)
{
	int i,j,sum;
	for(;*p1!='\0'||*p2!='\0';p1++,p2++)
	{
		if(*p1!=*p2)
		{
			sum=*p1-*p2;
			break;
		}
	}
	return sum;
}
int main()
{
	char s1[50],s2[50];
	printf("input s1:\n");
	gets(s1);
	printf("input s2:\n");
	gets(s2);
	printf("result of string compare:\n");
	printf("%d",strcmp(s1,s2));
	return 0;
}

猜你喜欢

转载自blog.csdn.net/weixin_44589540/article/details/86668401