include <stdio.h>
int sumUp(int arr[])
{
int sum = 0 ;
int a = sizeof(arr)/sizeof(arr[0]);
for(int i=0;i<a;i++)
{
sum = arr[i];
}
printf("%d\n",a);//为什么a会为1?
printf("%d\n",sum);
return sum;
}
int highestScore(int arr[])
{
int a = sizeof(arr)/sizeof(arr[0]);
int temp = arr[0];
for(int i=0;i<a;i++)
{
if(arr[i+1]> temp)
{
temp = arr[i+1];
}
}
return temp;
}
int lowestScore(int arr[])
{
int temp = arr[0];
int a = sizeof(arr)/sizeof(arr[0]);
for(int i=0;i<a;i++)
{
if(arr[i+1]<temp)
{
temp = arr[i+1];
}
}
return temp;
}
int averageScore(int arr[])
{
int a = sizeof(arr)/sizeof(arr[0]);
return sumUp(arr)/a;
}
/*int fromHighest2Lowest(int arr[a])
{
for(int i=0;i<a;i++)
{
int temp;
}
}
*/
int main()
{
int score[]={61,98,75,63,82,79,81,51,69,84};
printf("%d\n",sizeof(score)/sizeof(score[0])); //这里输出的是10,为什么sumUp输出的a为1?
printf("考试的总分是:%d\n",sumUp(score));
/* printf("考试的平均分是:%d\n",averageScore(score));
printf("考试的最高分是:%d\n",highestScore(score));
printf("考试的最低分是:%d\n",lowestScore(score));
*/
getchar();
return 0;
}
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
int sumUp(int arry[])的等价写法是int sum(int *arry)这样看应该好理解一些
另外sizeof在c语言中可不是函数,而是在编译期求值的