2024.1.19 作业

1.用指针封装 strcpy strcmp strcat

strcpy:

#include
#include
int main(int argc,const char *argv[])
{
    char arr[30]="",brr[30]="";
    char *pa = arr,*pb = brr;
    int i=0,len1=0,len2=0;
    printf("请输入字符串>>");
    gets(arr);
    printf("请输入字符串>>");
    gets(brr);
    len1=strlen(arr);
    len2=strlen(brr);
    for(i=0;i     {
        *(pa+i)=*(pb+i);
    }
    *(pa+len2)='\0';
    puts(arr);
    return 0;
}
 

2024.1.19 作业_第1张图片

strcmp:

#include
#include
int main(int argc,const char *argv[])
{
    char arr[30]="",brr[30]="";
    char *pa = arr,*pb = brr;
    int i=0,len1=0,len2=0,len=0,n=0;
    printf("请输入字符串>>");
    gets(arr);
    printf("请输入字符串>>");
    gets(brr);
    len1=strlen(arr);
    len2=strlen(brr);
    len=len2;
    if(len1>len2)
    {
        len=len1;
    }
    for(i=0;i     {
        if(*(pa+i)==*(pb+i))
        {
            continue;
        }
        else
        {
            printf("%d\n",*(pa+i)-*(pb+i));
            n=1;
            break;
        }
    }
    if(n==0)
    {
        printf("%d\n",n);
    }
    printf("%d\n",strcmp(arr,brr)); //验证

    return 0;
}
 

2024.1.19 作业_第2张图片

strcat:

#include
#include
int main(int argc,const char *argv[])
{
    char arr[30]="",brr[30]="";
    char *pa = arr,*pb = brr;
    int i=0,len1=0,len2=0;
    printf("请输入字符串>>");
    gets(arr);
    printf("请输入字符串>>");
    gets(brr);
    len1=strlen(arr);
    len2=strlen(brr);
    for(i=0;i     {
        *(pa+len1+i)=*(pb+i);
    }
    *(pa+len1+len2)='\0';
    puts(arr);
    return 0;
}
 

2024.1.19 作业_第3张图片

2.从终端中输入一串字符,求出空格的个数;指针

代码:

#include
#include
int main(int argc,const char *argv[])
{
    char arr[30]="";
    char *p = arr;
    int len=0,i=0,n=0;
    printf("请输入字符串>>");
    gets(arr);
    len=strlen(arr);
    for(i=0;i     {
        if(*(p+i)==' ')
        {
            n++;
        }
    }    
    printf("空格的个数为%d个\n",n);
    return 0;
}
 

2024.1.19 作业_第4张图片

3.冒泡排序--->指针

代码:

#include
#include
int main(int argc,const char *argv[])
{
    int arr[6]={34,23,78,56,99,1};
    int *p=arr,i=0,j=0,t=0;
    for(i=0;i<6-1;i++)
    {
        for(j=i+1;j<6;j++)
        {
            if(*(p+i)>*(p+j))
            {
                t=*(p+i);
                *(p+i)=*(p+j);
                *(p+j)=t;
            }
        }
    }
    for(i=0;i<6;i++)
    {
        printf("%d  ",*(p+i));
    }
    putchar(10);
    return 0;
}
 

2024.1.19 作业_第5张图片

你可能感兴趣的:(c语言)