C---数组名作函数参数
数组名可以作函数的实参和形参。如:
#include<stdio.h>
int main(void)
{
int array[]; f(array,); }
f(int arr[],int n)
{ }
array为实参数组名,arr为形参数组名。在学习指针变量之后就更容易理解这个问题了。数组名就是数组的首地址,实参想形参传送数组名市级上就是传送数组的地址,形参得到改地址后也指向同一数组。这就好像同一件物品有俩个彼此不同的名称一样。

同样,指针变量的值也是地址,数组指针变量的值即为数组的首地址,当然也可作为函数的参数使用。
#include<stdio.h>
float aver(float *pa);//ANSI函数原型
int main(void)
{
float sco[],av,*sp; //定义了一个长度为5的浮点型数组,一个浮点型变量,指针变量。
int i; //定义整形变量I用于循环。
sp=sco; //指向数组
printf("\ninput 5 scores:\n"); //打印
for(i=;i<;i++) //给数组赋值
{
scanf("%f",&sco[i]);
}
av=aver(sp); //变量赋值 函数返回值
printf("average score is %5.2f",av); //打印
system("pause"); //暂停 }
float aver(float *pa) //声明一个 形参为 浮点型指针变量的函数
{
int i; //整形变量I用于循环
float av,s=; //浮点型变量 av S
for(i=;i<;i++) //for循环给变量赋值
{
s=s+*pa++;
}
av=s/; //求出平均数
return av;
}
将数组a中的N个整数按相反顺序存放。
算法为:将a[0]与a[n-1]对换,再a[1]与a[n-2]对换。。。。,知道将a(n-1/2)与a[n-int((n-1)/2)]对换,现在用循环处理此问题,设俩个“位置指示变量”i和j,i的初值为0,j的初值为n-1.将a[i]与a[j]交换,然后使得i的值加1,j的值减1,再将a[i]与a[j]交换,直到i=(n-1)/2为止,如图所示。

C---数组名作函数参数的更多相关文章
- [C++程序设计]用数组名作函数参数
		1. 用数组元素作函数实参 #include <iostream> using namespace std; int max_value(int x, int max) { return ... 
- 【C语言】数组名作函数参数,完成数据的升序排列
		#include<stdio.h> void sort(int x[],int n); int main() { ] = { ,,,,,,,,, },i; sort(arr, ); pri ... 
- C语言中数组名作为参数进行函数传递
		用数组名作函数参数与用数组元素作实参有几点不同. 1) 用数组元素作实参时,只要数组类型和函数的形参变量的类型一致,那么作为下标变量的数组元素的类型也和函数形参变量的类型是一致的.因此,并不要求函数的 ... 
- C语言数组作为函数参数
		数组可以作为函数的参数使用,进行数据传送. 数组用作函数参数有两种形式,一种是把数组元素(下标变量)作为实参使用:另一种是把数组名作为函数的形参和实参使用. 数组元素作函数实参 数组元素就是下标变量, ... 
- C语言 数组做函数参数不传数组个数的遍历方法
		//数组做函数参数不传数组个数的遍历方法 #include<stdio.h> #include<stdlib.h> #include<string.h> void ... 
- C语言 数组做函数参数退化为指针的技术推演
		//数组做函数参数退化为指针的技术推演 #include<stdio.h> #include<stdlib.h> #include<string.h> //一维数组 ... 
- 用C++11实现C++17的apply(动态数组用作函数参数)
		标题有点错误,apply是用tuple做参数,调用一个函数.这个标题是为了能更好的适配搜索关键字. 动态数组用作函数参数更适合嵌入了脚本环境的C++程序,比如lua或javascript(js). 若 ... 
- C-指针,二级指针,二维数组作为函数参数使用,C语言链表(详解)
		一级指针 int *p; //表示定义一个int型(4字节)的指针p &p //表示p自身的地址位置 p ... 
- go语言基础之数组做函数参数是值拷贝
		1.数组做函数参数是值拷贝 示例: package main //必须有个main包 import "fmt" //数组做函数参数,它是值传递 //实参数组的每个元素给形参数组拷贝 ... 
- [GO]数组做函数参数
		package main import "fmt" //数组为函数参数,实际上是值传递//实参数据里的每个元素,给形参数组拷贝一份//这里形参的数组其实就是实参的复制品 func ... 
随机推荐
- SQL Server管理员专用连接的使用
			原文:SQL Server管理员专用连接的使用 作为一名DBA,经常会处理一些比较棘手的服务无响应问题,鉴于事态的严重性,多数DBA可能直接用“重启”大法,以便尽快的恢复生产环境的正常运转,但是多数情 ... 
- 菜鸟教程工具(三)——Maven自己主动部署Tomcat
			书连接至背面,在博客上,他介绍了如何使用Maven该项目包,这篇文章说,关于如何使用Maven会踢war部署包Tomcat.而不是手动copy过去. 眼下比較流行的方式有两种:一种是利用Tomcat官 ... 
- Java-如何去掉JFrame上的最大化最小化和关闭按钮(转)
			在JDK1.4以前,我们只有一种方式来去掉窗口的标题栏,那就是直接使用JWindow,用JWindow来代替JFrame使用.但用过JWindow的人一定知道,JWindow在操作系统的任务栏是不可见 ... 
- 修饰模式(Decorator结构化)C#简单的例子
			修饰模式(Decorator结构化)C#简单的例子 播放器的基本功能是移动.执行等.BaseAbility 新增功能:1.伤害技能harmAbility:2.阻碍技能BaulkAbility:3.辅助 ... 
- java科学和艺术语言 第六章 课后编程
			家转载,为保留作者成果.转载请注明出处,http://blog.csdn.net/netluoriver,有些文件在资源中也能够下载!假设你没有积分,能够联系我索要. 1. package Sixth ... 
- 使用cocoapods install友盟时报错Error installing UMengAnalytics
			报错: [!] /usr/bin/unzip /Users/soindy/Documents/SmartThermo/ios/SmartThermo/Pods/UMengAnalytics/file. ... 
- ANDROID L——Material Design详细解释(UI控制)
			转载请注明本文出自大苞米的博客(http://blog.csdn.net/a396901990),谢谢支持! Android L: Google已经确认Android L就是Android Lolli ... 
- 表复制语句select into from 与 insert into select 区别鉴赏
			select into from 与 insert into select 区别鉴赏 1.INSERT INTO SELECT语句 语句形式为:Insert into Table2(field1,fi ... 
- (spring-第14回【IoC基础篇】)国际化信息 (转)
			国际化又称为本地化. 当你把手机的language由中文切换到英文时,你的微信也相应改用英语,这就是i18n国际化.一般来说,应用软件提供一套不同语言的资源文件,放到特定目录中,应用根据不同语言的操作 ... 
- hdu 4965 Fast Matrix Calculation(矩阵高速幂)
			题目链接.hdu 4965 Fast Matrix Calculation 题目大意:给定两个矩阵A,B,分别为N*K和K*N. 矩阵C = A*B 矩阵M=CN∗N 将矩阵M中的全部元素取模6,得到 ... 
