一、strlen改写
代码:
#include <stdio.h>
int main(int argc, const char *argv[])
{
int i;
char arr[64];
printf("请输入字符串\n");
scanf("%s",arr);
for(i=0;arr[i]!=0;i++);
printf("字符串的长度为%d\n",i);
return 0;
}
运行结果:
二、strcopy改写
代码:
#include <stdio.h>
#include <string.h>
int main(int argc, const char *argv[])
{
int i;
char arr1[64]="";
char arr2[64]="";
printf("请输入arr1=\n");
scanf("%s",arr1);
for(i=0;i<strlen(arr1);i++)
{
arr2[i]=arr1[i];
}
printf("arr2=%s\n",arr2);
return 0;
}
运行结果:
三、strcmp的改写
代码:
#include "stdio.h"
int main(int argc, const char *argv[])
{
char str1[32]="abcd";
char str2[32]="bef";
int temp=0;
int i=0;
while(str1[i]!='\0'){
temp=str1[i]-str2[i];
if(temp==0){
i++;
}
else
break;
}
if(str1[i]==str2[i]){
temp=0;
}
else
temp=str1[i]-str2[i];
printf("%d\n",temp);
return 0;
}
运行结果:
四、strcat的改写
代码:
#include <stdio.h>
#include <string.h>
int main(int argc, const char *argv[])
{
char str1[100]="abcd";
char str2[100]="efg";
int i ;
int k ;
for(i=strlen(str1),k=0;i<strlen(str1)+strlen(str2),k<strlen(str2);i++,k++)
{
str1[i]=str2[k];
}
printf("str1 = %s\n",str1);
return 0;
}
运行结果:
五、
代码:
#include <stdio.h>
#include <string.h>
int main(int argc, const char *argv
{
char str1[32]="a1pbv8";
char c;
int i,j;
for(i=0,j=5;i<j;i++,j--)
{
c = str1[i];
str1[i]=str1[j];
str1[j] = c;
}
printf("%s\n",str1);
return 0;
}
运行结果:
六、
代码:
#include <stdio.h>
int main(int argc, const char *argv[])
{
char arr[3][4]={{0,1,2,3},{4,5,6,7},{8,9,10,11}};
char a[1][1]={0};
int max=a[1][1];
int i,j;
for(i=0;i<3;i++)
{
for(j=0;j<4;j++)
{
if(arr[i][j]>max)
{
max=arr[i][j];
}
}
}
printf("最大值是%d\n",max);
printf("第%d行 第%d列\n",i,j);
return 0;
}
运行结果: