#121 实现函数逆序输出一组数据
作者:互联网
题目描述:
函数实现将输入的一组数据逆序输出的功能。(参考函数原型:void isort(int a[], int n)) 输入输出格式要求: 编写函数void isort(int a[], int n); n表示数组元素个数 输出格式为:n1,n2,n3,...,nn 例如: a={1,2,3} n=3 输出: 3,2,1
参考代码:
#include<stdio.h>
void isort(int a[],int n)
{
for(int i=n-1;i>=0;printf(i>0?"%d,":"%d",a[i--]));
}
int main(){
int n,a[100001];
scanf("%d",&n);
for(int i=0;i<n;scanf("%d",&a[i++]));
isort(a,n);
return 0;
}
讲解:
这道题目较简单。有关题目的没啥要讲的。
但是关于函数的第二种定义方法,在这段代码中我选择了讲函数定义在main()函数前面,这样做也是可以的。如果放到main()前面定义则声明和定义直接连在一起,但如果放在main()后面定义则一定要在main()前面声明。因为计算机是按顺序执行代码的,你写的函数大部分要在main()中使用,而使用时如果前面不声明,计算机就不会认得这个函数,从而报错。
那这里可能有uu要问啦,既然放在main()后面定义还要在跑到main()前面多声明一次,那我们全部都在main()前面定义好了!非也非也!一个成熟的代码,自己写的函数是要多于main()函数的,那么如果全部定义在main()前面,就会导致头重脚轻,当你想查看函数执行过程的时候,你需要往下滑很长一段才能看到main()。
类比英语中定语(稍微有些不恰当),当定语非常长时,为了避免头重脚轻的难看现象出现,我们会使用定语从句。那么定语从句中which就相当于main()之前的函数声明,而将函数的定义全部放到后面去。
求实求真,大气大为。
标签:定语,函数,一组,前面,int,定义,121,main,逆序 来源: https://blog.csdn.net/qq_35835847/article/details/121153114