进度日志24 (指针、数组和指针)

本文深入探讨了C语言中指针的基本概念及其在数组操作中的应用,通过实例讲解了如何使用指针进行变量间的数据比较和数组元素的访问,涵盖了指针变量的定义、数组元素的访问方法及指针在数组中的运用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

学习笔记1:指针

#include <stdio.h>
void main()
{
    int a, b;
    int *pointer_1, *pointer_2;
//定义pointer_1 和pointer_2是指针变量
    a = 100;
    b = 10;
    pointer_1 = &a;
//pointer_1指向地址(指针)&a  (a是变量,&a是指向a的地址)
    pointer_2 = &b;
    printf("%d,%d\n", a, b);
    printf("%d,%d\n", *pointer_1, *pointer_2);
}

运行结果:

注意:&和*是自右向左运算的

题目:输入a和b两个整数,按先大后小的顺序输出a和b

#include <stdio.h>
void main()
{
    int a, b;
    int *p1, *p2;
    printf("please input two number:");
    scanf("%d %d", &a, &b);
    p1 = &a;
    p2 = &b;
    if (a > b)
    {
        printf("%d,%d", *p1, *p2);
    }
    else
    {
        printf("%d,%d", *p2, *p1);
    }
}

运行结果:

学习笔记2:数组和指针

题目:假设有一个a数组,整型,有10个元素。输出各元素的值。

答案:

①下标法:

#include <stdio.h>
void main()
{
    int a[10];
    int i;
    for (i = 0; i < 10; i++)
    {
        scanf("%d", &a[i]);
    }
    printf("\n");
    for (i = 0; i < 10; i++)
    {
        printf("%d", a[i]);
    }
}

②荣国数组名计算数组元素地址,找出元素的值:

#include <stdio.h>
void main()
{
    int a[10];
    int i;
    for (i = 0; i < 10; i++)
    {
        scanf("%d", &a[i]);
    }
    printf("\n");
    for (i = 0; i < 10; i++)
    {
        printf("%d", *(a+i));
/*a为首地址,i表示偏移,i=0时,结果就是数组a中的第一个元素的值,i=1时,a增加一个单位,跳到下一个字节,结果是下一个元素值*/
    }
}

③指针变量指向数组元素:

#include <stdio.h>
void main()
{
    int a[10];
    int i;
    int *p;
    for (i = 0; i < 10; i++)
    {
        scanf("%d", &a[i]);
    }
    printf("\n");
    for (p = a; p < (a + 10); p++)
    {
        printf("%d", *p);
    }
}

运行结果:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值