您现在的位置是:首页 > 编程 > 

C语言字符串的比较

2025-07-21 07:12:58
C语言字符串的比较 字符串的比较相关文章路径:C语言求字符串的长度->C语言字符串的复制-> C语言的字符串的联接->C语言字符串的比较->C语言查字符->C语言BF算法->C语言输出字符串->C语言输入字符串C 语言标准函数库中包括 strcmp 函数,用于字符串的比较。作为练习,我们自己编写一个功能与之相同的函数。函数原型 int StrCmp(co

C语言字符串的比较

字符串的比较

相关文章路径:C语言求字符串的长度->C语言字符串的复制->

C语言的字符串的联接->C语言字符串的比较->C语言查字符->C语言BF算法->C语言输出字符串->C语言输入字符串

C 语言标准函数库中包括 strcmp 函数,用于字符串的比较。作为练习,我们自己编写一个功能与之相同的函数。

函数原型

int StrCmp(ct char *str1, ct char *str2);

说明:str1 和 str2 分别为两个字符串的起始地址。按字典排序法,若 str1 串值大于 str2,则函数值为正整数;若 str1 串值小于 str2,则函数值为负整数;若 str1 串值与 str2 相等,则函数值为零。

裁判程序

代码语言:javascript代码运行次数:0运行复制
#include <stdio.h>

int StrCmp(ct char *str1, ct char *str2);

int main()
{
    char a[1024], b[1024];
    int r;
    gets(a);
    gets(b);
    r = StrCmp(a, b);
    if (r > 0)
    {
        puts("a > b");
    }
    else if (r < 0)
    {
        puts("a < b");
    }
    else // r == 0
    {
        puts("a == b");
    }
    return 0;
}

/* 你提交的代码将被嵌在这里 */

代码语言:javascript代码运行次数:0运行复制
输入样例1
stock
stack
输出样例1
a > b
输入样例2
be
bed
输出样例2
a < b
输入样例
heart
heart
输出样例
a == b

提交代码

代码语言:javascript代码运行次数:0运行复制
int StrCmp(ct char *str1, ct char *str2) 
{
	int flag = 1;
	int k;
	while (*str1 == *str2 && flag == 1) // flag用于记录是否要退出循环 首先是比较两个字符串相同的部分
	{
		if(*str1 == '\0') // 当字符串遍历完了之后 flag=0然后跳出循环
		{
			k = 0;
			flag = 0;
		}
		else
		{
			str1++;
			str2++;
		}
	}
	if(*str1 != *str2) // 最后比较不同的部分 部分部分的字符编码谁大一些
	{
		k = *str1 - *str2;	
	}
	return k;
}
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。 原始发表:2024-02-01,如有侵权请联系 cloudcommunity@tencent 删除字符串遍历函数算法字符编码

#感谢您对电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格的认可,转载请说明来源于"电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格

本文地址:http://www.dnpztj.cn/biancheng/1156735.html

相关标签:无
上传时间: 2025-07-20 07:22:38
留言与评论(共有 20 条评论)
本站网友 经纬城市绿洲三期
27分钟前 发表
C语言字符串的比较 字符串的比较相关文章路径:C语言求字符串的长度->C语言字符串的复制-> C语言的字符串的联接->C语言字符串的比较->C语言查字符->C语言BF算法->C语言输出字符串->C语言输入字符串C 语言标准函数库中包括 strcmp 函数
本站网友 平开窗
11分钟前 发表
则函数值为正整数;若 str1 串值小于 str2
本站网友 大事件2
23分钟前 发表
则函数值为正整数;若 str1 串值小于 str2
本站网友 radiant
8分钟前 发表
则函数值为正整数;若 str1 串值小于 str2
本站网友 中旅国际
30分钟前 发表
ct char *str2); int main() { char a[1024]
本站网友 乳山教育网
27分钟前 发表
ct char *str2); int main() { char a[1024]
本站网友 厦门婚纱摄影工作室哪家好
0秒前 发表
ct char *str2); int main() { char a[1024]
本站网友 大山子租房
29分钟前 发表
ct char *str2); 说明:str1 和 str2 分别为两个字符串的起始地址
本站网友 安卓群发短信
1分钟前 发表
ct char *str2); int main() { char a[1024]
本站网友 上海联影医疗科技有限公司
26分钟前 发表
则函数值为零
本站网友 爱雅口腔
4分钟前 发表
则函数值为零
本站网友 东立国际二手房
0秒前 发表
分享自作者个人站点/博客
本站网友 态度决定命运
12分钟前 发表
按字典排序法
本站网友 埃卢及家族
7分钟前 发表
原始发表:2024-02-01
本站网友 第二工业大学
8分钟前 发表
裁判程序代码语言:javascript代码运行次数:0运行复制#include <stdio.h> int StrCmp(ct char *str1
本站网友 小腿吸脂减肥
1分钟前 发表
则函数值为正整数;若 str1 串值小于 str2
本站网友 稳盈
21分钟前 发表
则函数值为负整数;若 str1 串值与 str2 相等
本站网友 双胞胎的形成
18分钟前 发表
ct char *str2); int main() { char a[1024]
本站网友 空姐的要求
7分钟前 发表
ct char *str2) { int flag = 1; int k; while (*str1 == *str2 && flag == 1) // flag用于记录是否要退出循环 首先是比较两个字符串相同的部分 { if(*str1 == '\0') // 当字符串遍历完了之后 flag=0然后跳出循环 { k = 0; flag = 0; } else { str1++; str2++; } } if(*str1 != *str2) // 最后比较不同的部分 部分部分的字符编码谁大一些 { k = *str1 - *str2; } return k; }本文参与 腾讯云自媒体同步曝光计划