7-27.28周末作业

strlen改写:

 1 #include <stdio.h>
 2 int  mystrlen(char* str)
 3 {
 4     int i = 0;
 5     for(i = 0;;)
 6     {
 7         if(*(str+i)!='\0')
 8         {
 9             i++;
10         }else
11         {
12             break;
13         }
14     }
15     return i;
16 }
17 int main(int argc, const char *argv[])
18 {
19     char arr[10];
20     char* pa = arr;
21     printf("请输入需要计算的字符串:");
22     gets(pa);
23     printf("arr数组的有效元素长度为%d\n",mystrlen(pa));
24     return 0;
25 }                                                               

 strcpy改写:

 1 #include <stdio.h>
 2     
 3 char* mystrcpy(char* str,char* str1)
 4 {
 5     int i = 0;
 6     for( i = 0;*(str1+i)!= '\0';i++ )
 7     {
 8             *(str+i) = *(str1+i);   
 9     }
10     *(str+i)='\0';
11     return str;
12 }
13 int main(int argc, const char *argv[])
14 {   
15     char arr[6];
16     char arr1[6];
17     printf("请输入第一个字符串:");
18     gets(arr);
19     printf("请输入第二个字符串:");
20     gets(arr1);
21     char* pa = arr;
22     char* pa1 = arr1;
23         puts(mystrcpy(pa,pa1));
24     return 0;
25 }                                                

strcmp改写:

  1 #include <stdio.h>
  2 int mystrcmp(char* str,char* str1)
  3 {
  4 
  5     int res = 0;
  6     for(int i = 0;;i++)
  7     {
  8         res = *(str+i)-*(str1+i);
  9         if(res != 0)
 10         {
 11             break;
 12         }else if(*(str+i)=='\0')
 13         {
 14             break;
 15         }
 16     }
 17 
 18     return res;
 19 }
 20 int main(int argc, const char *argv[])
 21 {
 22     char arr[10];
 23     char arr1[10];
 24     char* pa = arr;
 25     char* pa1 = arr1;
 26     printf("请输入第一个字符串:");
 27     gets(pa);
 28     printf("请输入第二个字符串:");                                        
 29     gets(pa1);
 30     printf("res = %d",mystrcmp(pa,pa1));
 31 
 32     return 0;
 33 }

strcat改写:
 

  1 #include <stdio.h>
  2 
  3 char* mystrcat(char *str,char *str1)
  4 {
  5     int i = 0,j = 0;
  6     for(i = 0;*(str+i)!= '\0';i++);
  7     for(j = 0;*(str1+j)!='\0';j++)
  8     {
  9         *(str+i+j)=*(str1+j);
 10     }
 11     *(str+i+j)='\0';
 12     return str;
 13 }
 14 int main(int argc, const char *argv[])
 15 {
 16     char arr[10];
 17     char arr1[10];
 18     char* pa = arr;
 19     char* pa1 = arr1;
 20     printf("请输入第一个字符串:");
 21     gets(pa);
 22     printf("请输入第二个字符串:");
 23     gets(pa1);
 24     printf("%s",mystrcat(pa,pa1));
 25 
 26     return 0;
 27 }                                                   

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值