Day8作业

1.封装strcmp,strcpy,strcat函数

1.1strcmp

#include
#include
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;
    while(*pa!='\0'&&*pb!='\0')
    {
        if(*pa!=*pb)
        {
            printf("%d\n",*pa-*pb);
            break;
        }
        pa++;
        pb++;
    }
    if(*pa=='\0'||*pb=='\0')
    {    
        printf("%d\n",*pa-*pb);
    }
    return 0;
}

Day8作业_第1张图片

1.2strcpy

#include
#include
int main(int argc, const char *argv[])
{
    char arr[30]="";
    char brr[30]="";
    int len=0;
    char *pa=arr;
    char *pb=brr;
    int i=0;
    printf("请输入要复制的字符串>>");
    gets(brr);
    printf("复制前:\narr:\n");
    puts(arr);
    printf("brr:\n");
    puts(brr);
    while(*(pb++)!='\0')
    {
        len++;
    }
    for(pb=brr,i=0;i     {
        *pa=*pb;
    }
    *pa=*pb;
    printf("复制后:\narr:\n");
    puts(arr);
    return 0;
}

Day8作业_第2张图片

1.3strcat


#include
#include
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 len_a=0;
    int len_b=0;
    int i=0;
    while(*(pa++)!='\0')
    {
        len_a++;
    }
    while(*(pb++)!='\0')
    {
        len_b++;
    }
    for(pa=arr,pb=brr,i=0;i     {
        *(pa+len_a)=*pb;
    }
    *(pa+len_a-1)=*pb;
    puts(arr);
    return 0;
}
Day8作业_第3张图片

2.统计输入字符串中的空格数

#include
#include
int main(int argc, const char *argv[])
{
    char arr[30]="";
    printf("请输入一串字符>>");
    gets(arr);
    char *p=arr;
    int num=0;
    while(*(p++)!='\0')
    {
        if(*p==' ')
        {
            num++;
        }
    }
    printf("空格数量有%d个\n",num);
    return 0;
}
Day8作业_第4张图片

3.冒泡排序

#include
#include
int main(int argc, const char *argv[])
{
    int len;
    printf("请输入数组长度\n");
    scanf("%d",&len);
    int arr[len];
    int *p=arr;
    int i=0;
    int j=0;
    for(i=0;i     {
        printf("请输入一个数>>");
        scanf("%d",p);
    }
    for(i=0,p=arr;i     {
        for(j=0;j         {
            if(*(p+j)>*(p+j+1))
            {
                *(p+j)=*(p+j)^*(p+j+1);
                *(p+j+1)=*(p+j)^*(p+j+1);
                *(p+j)=*(p+j)^*(p+j+1);    
            }
        }
    }
    for(i=0;i     {
        printf("%d\t",*(p+i));
    }
    printf("\n");
    return 0;
}
Day8作业_第5张图片

你可能感兴趣的:(linux,算法,运维)