不用字符串函数,实现字符串的求长度,复制,比较,连接操作

1、不用strlen函数求字符串长度

/*
	说明:不用字符串函数strlen求字符串长度。
	思路:1.首先定义一个字符串数组,2.为字符串赋值,
	3.因为strlen函数是到'\0'截止计算长度的,
	且不知道字符串的长度(循环次数未知),
	所以我们用while循环语句,
	并且用'\0'作为循环结束条件。 
*/
#include<stdio.h>
int main()
{
    
    
	char str[100];
	printf("请输入一段字符串:\n");
	scanf("%s",str);//输入字符串str 
	int i=0;
	while(str[i]!='\0')//循环条件 
	{
    
    
		i++;	
	}
	printf("字符串长度为:%d\n",i);	
} 

测试:
在这里插入图片描述

2、不用strcpy函数复制字符串

#include<stdio.h>
int main()
{
    
    
	char s1[100]="abcdef";
	char s2[100]="hello";
	int i=0;
	while(s2[i])
	{
    
    
		s1[i]=s2[i];
		i++;
	}
	s1[i]='\0';
	printf("复制后字符串s1为:%s",s1);	
} 

测试:
在这里插入图片描述

3、不用strcmy函数比较字符串

#include<stdio.h>
int main()
{
    
    
	char s1[100];
	char s2[100];
	int i=0;
	printf("请输入字符串s1:\n");
	gets(s1);
	printf("请输入字符串s2:\n");
	gets(s2);
	while(s1[i]!='\0')
	{
    
    
		if(s1[i]-s2[i]!=0)
		{
    
    
			printf("字符串s1和字符串s2不相等\n");
			return 0;//如果不相等结束程序
		}
		i++;
	}
	printf("字符串s1和字符串s2相等\n"); 
} 

测试:
在这里插入图片描述
在这里插入图片描述

4、不用strcat函数连接字符串

#include<stdio.h>
int main()
{
    
    
	char s1[100];
	char s2[100];
	int i=0,j=0;
	printf("请输入字符串s1:\n");
	gets(s1);
	printf("请输入字符串s2:\n");
	gets(s2);
	while(s1[i])
	{
    
    
		i++;
	}
	while(s2[j])
	{
    
    
		s1[i]=s2[j];
		i++;
		j++;
	}
	printf("连接后为%s",s1);
} 

测试:
在这里插入图片描述