c语言 aver=ave(n,m)是什么意识

作者&投稿:善养 (若有异议请与网页底部的电邮联系)
在c语言中 aver = &ave和*aver = ave有什么区别吗~

区别很大。

int *aver;
这相当于是超市存包柜打印出来的小票,上面可以标柜子的编号;*aver指的是小票上的编号所对应那个柜子

int ave;
这相当于是超市的存包柜,而&ave表示的是这个柜子的编号

aver=&ave;
把小票上的编号改为ave这个柜子的编号
此时*aver和ave就是一样的了


*aver=ave
是什么意思呢?就是把ave那个柜子里的东西复制一份,装到小票上的编号所对应的那个柜子里的东西。这里有一个问题,就是小票上对应的是哪个柜子?如果之前没有指定,那么这时就出错了

#include "stdafx.h"

#include
#include

#define N 20
int fun(float *s,int n,float *aver)
{
float ave,t=0.0;
int count=0,k,i;
/********found********/
for(k=0;k<n;k++)
t=s[k];
ave=t/n;
for(i=0;i<n;i++)
if(s[i]<ave)
count++;
/********found********/
aver = &ave;//*aver=&ave;修改的地方
return count;
}

int main() //无返回类型,加了个int,
{
float s[30],aver;
int m,i;
system("cls");//clrscr();修改的地方
printf("
Please enter m: ");
scanf("%d", &m);
printf("
Please enter %d mark :
", m);
for(i=0;i<m;i++)
scanf("%f",s+i);
printf("
The number of students : %d
",fun(s,m,&aver));
printf("Ave=%f
",aver);
return 0;//返回值
}
直接复制到vc6.0下 运行无错

先来看看aver=ave(n,m)这句话里的内容是什么:aver是一个变量。ave()是一个函数,括号里的m和n是函数的两个变量(也叫参数)。
aver=ave(n,m)这句话的意识就是:调用ave 函数,参数分别是n和m,最后的函数值赋值给aver。
它的形式就跟我们学过的函数如y=sinx是一个道理:x是自变量,函数值是y。在本例中,函数ave的具体作用,还要有一个函数定义部分。


调兵山市19120417136: c语言 aver=ave(n,m)是什么意识 -
林菊迪尔: 先来看看aver=ave(n,m)这句话里的内容是什么:aver是一个变量.ave()是一个函数,括号里的m和n是函数的两个变量(也叫参数).aver=ave(n,m)这句话的意识就是:调用ave 函数,参数分别是n和m,最后的函数值赋值给aver. 它的形式就跟我们学过的函数如y=sinx是一个道理:x是自变量,函数值是y.在本例中,函数ave的具体作用,还要有一个函数定义部分.

调兵山市19120417136: 用C语言编写:完成从键盘输入两个整数a和b,求平均值ave,并输出平均值 -
林菊迪尔: #include<stdio.h> void main() {int a,b; float aver=0; scanf("%d %d",&a,&b); printf("%f",(float)((a+b)/2.0)); }2 32.500000Press any key to continue

调兵山市19120417136: c语言 aver()什么意思? -
林菊迪尔: aver是average的缩写,即为“求平均值”.包含在数学头文件中.

调兵山市19120417136: c语言6.输入十个整数,计算出平均值(aver),找出最大者(max)和最小者(min)并将三者输出. -
林菊迪尔: 思路:定义整型数组a,max,min和aver,for循环键盘输入,把输入数和max、min比较更新max和,min,并aver进行累加,最后输出max、min和aver除以10即可. 参考代码: #include<stdio.h> int main() {int a[10],max,min,i;float aver=0.0;scanf(...

调兵山市19120417136: 从键盘输入20个学生C语言的成绩(整数),求他们的平均分aver(保留两位小数),并求出超过平均分的学生人 -
林菊迪尔: #includedouble Aver(double A[]) { int i; double n=0.; for(i=0;i<20;i++) n+=A[i];//求总分 n/=20;//总分除总人数就是平均分 return n; } main() { double m; int n,i; //测试数据 double s[20]={78,98,56,36,98,74,63,96,32,78,69,58,63,45,78,69,36,21,36,86...

调兵山市19120417136: C语言,aver啥意思 -
林菊迪尔: 你上面的那个aver是存放你函数返回的值. 函数:能够完成特定功能的一小段代码..

调兵山市19120417136: C语言编程中为什么“aver=average(score[10])”是错误的,而是“aver=average(score,10)” -
林菊迪尔: 首先,如果数组score元素为10个的话,score[10]已经越界了,而且,average函数的参数形式为,第一个参数给数组首地址,第二个参数给要取平均值的元素个数,所以第一种不可以.

调兵山市19120417136: c语言初级问题
林菊迪尔: 函数fun中的 aver=&ave;错了,应该是*aver=ave; 因为参数是指针,所以要修改指针指向的地方,而不是指针本身.

调兵山市19120417136: 用c语言写一个简单的程序,就是在键盘上输入10个数,然后求平均数
林菊迪尔:#include <stdio.h> int main() { double num[10]; double count,ave; double i; printf("请输入10个数字:"); for(i=0;i<10;i++) { scanf("%d",&num[i]); } for(i=0;i<10;i++) { count+=num[i]; } printf("%d\n",count); ave=count/10.0; printf("平均数...

调兵山市19120417136: C语言高手 帮我看看!!
林菊迪尔: 具体函数更改如下: #include &lt;stdio.h&gt; int *aver(int (*score)[5],int n,int *av) { int m; score[n][5]=0; for(m=0;m&lt;5;m++) {score[n][5]+=score[n][m]; *av=score[n][5]/5; } } void main() { int score[10][5],(*p)[5],i,j,av; p=score; av=0; for(i=0;i&lt;10;i++) {...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网