1.封装 strcpy strcmp strcat
strcpy:
#include <stdio.h>
#include <string.h>
int main(int argc, const char *argv[])
{
char arr[30] ="";
char brr[30] ="";
printf("请输入第一个字符串>>>");
gets(arr);
printf("请输入第二个字符串>>>");
gets(brr);
char *pa = arr;
char *pb = brr;
int len1 = strlen(arr);
int len2 = strlen(brr);
int i =0;
for(i=0;i<len2;i++)
{
*(pa+i) = *(pb+i);
}
*(pa+len2)='\0';
puts(arr);
return 0;
}
strcmp:
#include <stdio.h>
#include <string.h>
int main(int argc, const char *argv[])
{
char arr[30] = "";
char brr[30] = "";
printf("请输入第一串字符>>>");
gets(arr);
printf("请输入第二串字符>>>");
gets(brr);
char *pa = arr;
char *pb = brr;
int i = 0;
int len1 = strlen(arr);
int len2 = strlen(brr);
int result = 0;
int min = len1;
if(len1>len2)
{
min = len2;
}
for(i=0;i<=min;i++)
{
if(*(pa+i)!=*(pb+i))
{
result=*(pa+i)-*(pb+i);
break;
}
}
printf("%d\n",result);
return 0;
}
strcat:
#include <stdio.h>
#include <string.h>
int main(int argc, const char *argv[])
{
char arr[30]="";
char brr[30]="";
printf("请输入第一串字符>>>");
gets(arr);
printf("请输入第二串字符>>>");
gets(brr);
char *pa = arr;
char *pb = brr;
int i = 0;
int len1 = strlen(arr);
int len2 = strlen(brr);
for(i=0;i<len2;i++)
{
*(pa+len1+i) = *(pb+i);
}
puts(arr);
return 0;
}
2.从终端中输入一串字符,求出空格的个数;指针
#include <stdio.h>
#include <string.h>
int main(int argc, const char *argv[])
{
char arr[30]="";
printf("请输入一串字符串>>>");
gets(arr);
char *pa = arr;
int i=0;
int count = 0;
int len=strlen(arr);
for(i=0;i<len;i++)
{
if(*(pa+i)==' ')
count++;
}
printf("字符串空格的数目为 %d\n",count);
return 0;
}
3.冒泡排序--->指针
#include <stdio.h>
#include <string.h>
int main(int argc, const char *argv[])
{
char arr[30]="";
printf("请输入一串字符串>>>");
gets(arr);
char *p = arr;
int i = 0;
int j = 0;
int temp = 0;
int len = strlen(arr);
for(i=0;i<len;i++)
{
for(j=i+1;j<len;j++)
{
if(*(p+j)<*(p+i))
{
temp =*(p+i);
*(p+i) = *(p+j);
*(p+j) = temp;
}
}
}
puts(arr);
return 0;
}