数组结合指针的简单操作

#include <stdio.h>
#include <stdlib.h>


int main()
{
    int arr_a[10];
    int arr_b[10];

    for(int i=0;i<10;i++) arr_a[i]=i;

    int *p=arr_b;
    int i=0;
    while(p<arr_b+10){
        *p=i+10;
        p++;
        i++;
    }

    printf("打印数组arr_a:");
    for(int i=0;i<10;i++) printf("%d,",arr_a[i]);
    printf("\n");

    printf("打印数组arr_b:");
    for(p=arr_b;p<arr_b+10;p++) printf("%d,",*p);
    printf("\n");

    for(int i=0;i<10-1;i++) arr_a[i]=arr_a[i+1];
    arr_a[10-1]=-1;
    printf("左移数组arr_a:");
    for(int i=0;i<10;i++) printf("%d,",arr_a[i]);
    printf("\n");

    for(p=arr_b;p<arr_b+10-1;p++) *p=*(p+1);
    *(arr_b+10-1)=-1;
    printf("左移数组arr_b:");
    for(p=arr_b;p<arr_b+10;p++) printf("%d,",*p);
    printf("\n");

    for(int i=10-1;i>=0;i--) arr_a[i+1]=arr_a[i];
    arr_a[0]=-1;
    printf("右移数组arr_a:");
    for(int i=0;i<10;i++) printf("%d,",arr_a[i]);
    printf("\n");

    for(p=arr_b+10-1;p>=arr_b;p--) *(p+1)=*p;
    *arr_b = -1;
    printf("右移数组arr_b:");
    for(p=arr_b;p<arr_b+10;p++) printf("%d,",*p);
    printf("\n");

    return 0;
}
发布了14 篇原创文章 · 获赞 1 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/lzdelphi/article/details/104138912