数组名作为函数参数(求学生平均成绩)

除了可以用数组元素作为函数参数外,还可以用数组名作为函数参数(包括实参和形参)应当注意的是:用数组元素作为实参时传递的是数组元素的值,而用数组名作为函数的实参,向形参(函数名或指针变量)传递的是数组首地址的值。

#include<stdio.h>
float average(float array[5])
{
	int i;
	float aver,sum=0;
	for(i=0;i<5;i++)
		sum+=array[i];
	aver=sum/5;
	return aver;
}
int main()
{
	float score[5],aver;
	int i;
	for(i=0;i<5;i++)
		scanf("%f",&score[i]);
	aver=average(score);
	printf("%f",aver);
}

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-11-03 01:35:02

数组名作为函数参数(求学生平均成绩)的相关文章

编程题:数组名作为函数参数。需要根据下面要求来实现

编程题:数组名作为函数参数. 要求分析:形参和实参都是数组名,传递整个数组,形参数组与实参数组必须等同,是存放在同一空间的同一个数组.形参数组修改时,实参数组也同时被修改,否则无法运行. #include<stdio.h> void change(int x[2]) { int t; printf("x[0]=%d,x[1]=%d\n",x[0],x[1]); t=x[0];x[0]=x[1];x[1]=t; printf("x[0]=%d,x[1]=%d\n&q

C++ 数组名作为函数参数 都是我的错

void func(char arr[100]) { cout<<sizeof(arr); } 这样一道题,我以为输出的是100呢……32位系统,结果是4 因为:数组名在函数体中被当成一个指针来使用 #include <iostream> using namespace std; void myF( char arr[100]) { cout<<sizeof(arr)<<endl; } int main(void) { char arr[100]; myF(

求学生平均成绩(数组录入赋值)Value.java

import java.util.Scanner;public class Value{ public static void main(String[] args){ Scanner in=new Scanner(System.in); System.out.println("请定义学生的人数"); int num=in.nextInt(); int[] arr=new int[num]; System.out.println(arr.length); int sum=0; for(

JAVA 数组实例-求学生平均成绩,与计算数组的长度

实例: 知识点:数组名.length是计算数组的长度 import java.util.*; //求学生平均分成绩 public class Test{ public static void main(String[] args){ Scanner in = new Scanner(System.in); System.out.println("======求学生平均成绩======"); System.out.println("请输入有多少个学生:"); int

&lt;16&gt;【理解】数组元素作为函数参数+【掌握】数组名作为函数参数+【掌握】数组名作为函数参数的注意点

#include <stdio.h> int sum(int x,int y){ return x+y; } void printNum(int x){ //判断x的值 if (x>0) { printf("%d\t",x); }else{ printf("0\t"); } } int main(int argc, const char * argv[]) { int a[5]={1,-2,-3,-4,5}; //需求:要求计算数组的第一个元素和最

数组名作为函数参数

例: #include <stdafx.h> #include<stdio.h> void f(int arr[],int n) { -- } void main() { int array[10]; -- f(array 10); } f(int arr[],int n) 在编译时是将arr按指针变量处理的,相当于将函数f的首部写成f(int *arr,int n); 说明:C语言调用函数时采用"值传递"方式,当用变量名作为函数参数时传递的是变量的值,当用数组

数组名做函数参数

数组名做函数参数 用数组名做函数参数与用数组元素作实参有几点不同: (1)用数组元素作实参时,只要数组类型和函数的形参变量的类型一致,那么作为下标变量的数组元素的类型也和函数形参变量的类型是一致的.因此,并不要求函数的形参也是下标变量.换句话说,对数组元素的处理是按普通变量对待的.用数组名作函数参数时,则要求形参和相应的实参都必须是类型相同的数组,都必须有明确的数组说明.当形参和实参两者类型不一致时,机会发生错误. (2)用普通变量或下标变量作函数参数时,形参变量和实参变量都是由编译系统分配的两

二维数组如何作为函数参数使用?(转)

如果我们需要编写一个处理二维数组的函数,那么这个函数原型应该如何声明呢? 首先,我们应该牢记:数组名被视为其地址,因此,相应的形参是一个指针.例如,假设有如下的代码: [cpp] view plaincopy int data[3][4] = { {1, 2, 3, 4}, {5, 5, 7, 8}, {9, 10, 11, 12} } int total = sum(data, 3); 那么sun函数的原型应该如何声明呢?为什么将行数3作为参数,而不将列数4作为参数呢? 我们可以这样理解:da

数组作为函数参数

一.一维数组名作函数参数 用数组名作函数参数,应该在主调函数和被调函数分别定义数组,例如 <span style="font-size:18px;">void main() { void f(int b[10]);//void f(int b[]) int a[10]; f(a); }</span> 在被调用函数中声明了形参数组的大小为10,但在实际中,指定其大小是不起任何作用的,因为C语言编译对形参数组大小不做检查,只将实参数组的首元素地址传给形参数组.形参数