C语言:使用指针打印数组内容-1

简介: 总体思路:(一).定义一维数组arr:float arr[] = { 3.14f, 99.9f, 66.5f, 0.0f }; 定义指针变量:float* p = arr; -- 把数组名(数组收元素地址)放进指针变量

思路一:用 for循环 进行循环打印(未写自定义函数)

总体思路:

(一).


定义一维数组arr:


float arr[] = { 3.14f, 99.9f, 66.5f, 0.0f };


     


定义指针变量:


float* p = arr; -- 把数组名(数组收元素地址)放进指针变量


         


计算数组元素个数:


int sz = sizeof(arr) / sizeof(arr[0]);  -- 元素个数


         


(二).


使用 for循环 和 指针变量 打印数组内容:


使用 解引用符号* 获取 指针内容,


获取一位后就 调整一次指针,把指针移向下一位


             


             


第一步:

(1).


定义一维数组arr:


float arr[] = { 3.14f, 99.9f, 66.5f, 0.0f };


     


(2).


定义指针变量:


float* p = arr; -- 把数组名(数组收元素地址)放进指针变量


         


(3).


计算数组元素个数:


int sz = sizeof(arr) / sizeof(arr[0]);  -- 元素个数

实现代码:

#include <stdio.h>
int main()
{
  //定义一维数组:
  float arr[] = { 3.14f,99.9f,66.5f,0.0f };
  //定义指针变量:
  float* p = arr; //把数组名(首地址)放进指针中
  //计算数组元素个数:
  int sz = sizeof(arr) / sizeof(arr[0]);//元素个数
  return 0;
}

实现图片:

image.png

第二步:

使用 for循环 指针变量 打印数组内容

           

使用 解引用符号*获取 指针内容

获取一位后就 调整一次指针,把指针移向下一位

实现代码:

#include <stdio.h>
int main()
{
  //定义一维数组:
  float arr[] = { 3.14f,99.9f,66.5f,0.0f };
  //定义指针变量:
  float* p = arr; //把数组名(首地址)放进指针中
  //计算数组元素个数:
  int sz = sizeof(arr) / sizeof(arr[0]);//元素个数
  //使用 for循环 和 指针变量 打印数组内容:
  int i = 0;
  for (i = 0; i < sz; i++)
  {
    //使用 解引用符号* 获取指针内容
    printf("%f ", *p);
    //获取一位后就调整一次指针,把指针移向下一位
    p++;
  }
  return 0;
}

实现图片:

image.png

思路一:最终代码和实现效果(未写自定义函数)

最终代码:

#include <stdio.h>
int main()
{
  //定义一维数组:
  float arr[] = { 3.14f,99.9f,66.5f,0.0f };
  //定义指针变量:
  float* p = arr; //把数组名(首地址)放进指针中
  //计算数组元素个数:
  int sz = sizeof(arr) / sizeof(arr[0]);//元素个数
  //使用 for循环 和 指针变量 打印数组内容:
  int i = 0;
  for (i = 0; i < sz; i++)
  {
    //使用 解引用符号* 获取指针内容
    printf("%f ", *p);
    //获取一位后就调整一次指针,把指针移向下一位
    p++;
  }
  return 0;
}

实现效果:

image.png

思路二:用 while循环 进行循环打印

总体思路:

(一).

定义一维数组arr

float arr[] = { 3.14f, 99.9f, 66.5f, 0.0f };


     


定义指针变量:


float* p = arr; -- 把数组名(数组收元素地址)放进指针变量


         


计算数组元素个数:


int sz = sizeof(arr) / sizeof(arr[0]);  -- 元素个数使用指针变量表示元素个数

float* q = arr + sz;

(二).


使用 while循环 和 指针变量 打印数组内容:


     


使用 解引用符号* 获取 指针内容,


获取一位后就 调整一次指针,把指针移向下一位:


*p++ -- 先执行 *p 获取指针内容,再执行 p++ 调整指针


第一步:

(1).

定义一维数组arr

float arr[] = { 3.14f, 99.9f, 66.5f, 0.0f };

(2).


定义指针变量:


float* p = arr; -- 把数组名(数组收元素地址)放进指针变量


         


(3).


计算数组元素个数:


int sz = sizeof(arr) / sizeof(arr[0]);  -- 元素个数


         


(4).


使用指针变量表示元素个数:


float* q = arr + sz;

实现代码:

#include <stdio.h>
int main()
{
  //定义一维数组:
  float arr[] = { 3.14f,99.9f,66.5f,0.0f };
  //定义指针变量:
  float* p = arr; //把数组名(首地址)放进指针中
  //计算数组元素个数:
  int sz = sizeof(arr) / sizeof(arr[0]);//元素个数
  //使用指针变量表示元素个数:
  float* q = arr + sz;
  return 0;
}


实现图片:

image.png

第二步:

使用 while循环 指针变量 打印数组内容

       

使用 解引用符号*获取 指针内容

获取一位后就 调整一次指针,把指针移向下一位:

*p++ -- 先执行 *p 获取指针内容,再执行 p++ 调整指针

实现代码:

#include <stdio.h>
int main()
{
  //定义一维数组:
  float arr[] = { 3.14f,99.9f,66.5f,0.0f };
  //定义指针变量:
  float* p = arr; //把数组名(首地址)放进指针中
  //计算数组元素个数:
  int sz = sizeof(arr) / sizeof(arr[0]);//元素个数
  //使用指针变量表示元素个数:
  float* q = arr + sz; //此时指针变量在最后一个元素地址
  //使用 while循环 和 指针变量 打印数组内容:
  while (p < q)
  //对比地址大小,只要还小于最后一个元素地址就循环
  {
    printf("%.2f ", *p++);
    //*p++ , 先解引用 ,后再p++
  }
  return 0;
}

实现图片:

image.png

思路二:最终代码和实现效果

最终代码:

#include <stdio.h>
int main()
{
  //定义一维数组:
  float arr[] = { 3.14f,99.9f,66.5f,0.0f };
  //定义指针变量:
  float* p = arr; //把数组名(首地址)放进指针中
  //计算数组元素个数:
  int sz = sizeof(arr) / sizeof(arr[0]);//元素个数
  //使用指针变量表示元素个数:
  float* q = arr + sz; //此时指针变量在最后一个元素地址
  //使用 while循环 和 指针变量 打印数组内容:
  while (p < q)
  //对比地址大小,只要还小于最后一个元素地址就循环
  {
    printf("%.2f ", *p++);
    //*p++ , 先解引用 ,后再p++
  }
  return 0;
}

实现效果:

2d50e18494634ae3a35ae58d267f18c2.png

相关文章
|
6天前
|
C语言
指针进阶(C语言终)
指针进阶(C语言终)
|
2天前
|
搜索推荐 程序员 C语言
指针赋值与引用传递:C语言的基础知识与实践技巧
指针赋值与引用传递:C语言的基础知识与实践技巧
|
6天前
|
C语言
指针进阶(回调函数)(C语言)
指针进阶(回调函数)(C语言)
|
5天前
|
存储 编译器 C语言
C语言数组详解
C语言数组详解
13 1
|
6天前
|
C语言
C语言刷题(数组)
C语言刷题(数组)
|
1天前
|
搜索推荐 程序员 C语言
指针赋值与引用传递:C语言的基础知识与实践技巧
指针赋值与引用传递:C语言的基础知识与实践技巧
|
5天前
|
Java 程序员 Linux
探索C语言宝库:从基础到进阶的干货知识(类型变量+条件循环+函数模块+指针+内存+文件)
探索C语言宝库:从基础到进阶的干货知识(类型变量+条件循环+函数模块+指针+内存+文件)
11 0
|
5天前
|
C语言
C语言中的函数指针、指针函数与函数回调
C语言中的函数指针、指针函数与函数回调
6 0
|
5天前
|
存储 C语言
C语言中的多级指针、指针数组与数组指针
C语言中的多级指针、指针数组与数组指针
6 0
|
5天前
|
存储 C语言
C语言数组指针详解与应用
C语言数组指针详解与应用
11 0