• 指针03 零基础入门学习C语言43


    第八章:指针03

     

    让编程改变世界

    Change the world by program


     

    源码分析

    输出数组中的全部元素

    假设有一个a数组,整型,有10个元素。要输出各元素的值有三种方法: (1) 下标法 (2) 通过数组名计算数组元素地址,找出元素的值。 (3) 用指针变量指向数组元素。   大家给分析分析,翻炒翻炒~ [codesyntax lang="c"]
    #include <stdio.h>
    
    void main()
    {
        int *p, i, a[10];
    
        p = a;
        for( i=0; i < 10; i++ )
        {
            scanf("%d", p++);
        }
        printf("n");
        for( i=0; i < 10; i++, p++ )
        {
            printf("%d", *p);
        }
    }
    [/codesyntax]  

    用数组名作函数参数

    在第8章中介绍过可以用数组名作函数的参数 如: [codesyntax lang="c"]
    void f(int arr[], int n)
    {
        ……… ………
    }
    void main()
    {
        int array[10]; 
    
        …… ……
    
        f(array, 10);
    }
    [/codesyntax]   void f(int arr[], int n) 但在编译时是将arr按指针变量处理的,相当于将函数f的首部写成 f(int *arr, int n) 以上两种写法是等价的。 需要说明的是:C语言调用函数时虚实结合的方法都是采用“值传递”方式,当用变量名作为函数参数时传递的是变量的值,当用数组名作为函数参 数时,由于数组名代表的是数组首元素地址,因此传递的值是地址,所以要求形参为指针变量。  

    实战演练

    将数组a中n个整数按相反顺序存放

    [caption id="attachment_152" align="aligncenter" width="300"] 将数组a中n个整数按相反顺序存放[/caption]  

    第一个版本:数组名作参数

    reserve01.c(点击下载)  

    第二个版本:指针作参数

    reserve02.c(点击下载)  

    课后题

     

    题目:从10个数中找出其中最大值和最小值。

    第一个版本! 体会一下解法,再把它变成第二个版本:用指针作参数!   [buy] 获得所有教学视频、课件、源代码等资源打包 [/buy] [Downlink href='http://kuai.xunlei.com/d/LTCOQLTTGOMC']视频下载[/Downlink]
  • 相关阅读:
    奇怪的人
    假象世界
    心态记录
    民用自组织网络公司概要
    禁止VMware虚拟机与Host的时间同步
    20万左右SUV介绍
    手机GPS为什么能在室内定位?
    取余与位运算
    shell 基础进阶 *金字塔
    shell 、awk两种方法编写9*9法表
  • 原文地址:https://www.cnblogs.com/LoveFishC/p/3847004.html
Copyright © 2020-2023  润新知