C语言程序设计问题:用内联函数实现求出一维数组的最大值。在主函数中输入数组元素值,调用求最大值函数

C语言程序设计问题:用内联函数实现求出一维数组的最大值。在主函数中输入数组元素值,调用求最大值函数,第1张

#include<stdioh>

inline int maxn(int p,int n){

 int i,maxnum=p[0];

 for(i=1;i<n;i++)

  if(p[i]>maxnum)maxnum=p[i];

 return maxnum;

}

int main(){

 int a[100],n,i;

 scanf("%d",&n);

 for(i=0;i<n;i++)

  scanf("%d",a+i);

 printf("%d\n",maxn(a,n));

 return 0;

}

/BY TXJ/

对于C语言中的函数类型,一般可以分为以下两类:

1 库函数(Library Function):也称为内置函数(Built-in Function),是由C语言提供的、已经封装好的函数。库函数通常具有标准化、通用化的特点,包括数学运算、字符串处理、文件 *** 作等方面。例如`printf()`和`scanf()`是C语言中常用的库函数。

2 用户自定义函数(User-Defined Function):也称为外置函数(External Function),是程序员根据需求自行编写的函数。用户自定义函数可以将某一段需要重复使用的代码封装成一个函数,在其他地方调用该函数即可实现相同的功能,起到了复用代码的作用。在需要多次执行特定任务时,使用自定义函数可以使程序结构更加清晰、易于理解。

内联函数和宏一样,是在预编译的时候直接展开替换的。

至于你说的问题,跟是否是内联函数没有关系,你在调用的时候要给函数f传个参数,那个参数就是实参,这里的a是形参,调用f之后,实参的值要减1,形参只有在函数调用的时候在栈上分配内存,函数调用结束后消失。

而内联函数在调用的时候在预编译时候展开,也就是说不会分配额外的内存,执行效率高,但是由于预编译的时候展开,所以如果调用的多会使应用程序的大小变大。

#include<stdioh>

void main()

{

long int b,c,d,e,x;

printf("请输入任意一个正整数\n");

scanf("%ld",&x);

b=x%10000/1000; /分解出千位/

c=x%1000/100; /分解出百位/

d=x%100/10; /分解出十位/

e=x%10; /分解出个位/

printf("四位数的立方和为:%ld\n",(bbb)+(ccc)+(ddd)+(eee));

}

数据类型关键字

short:修饰int,短整型数据,可省略被修饰的int。(K&R时期引入)

long:修饰int,长整型数据,可省略被修饰的int。(K&R时期引入)

long long:修饰int,超长整型数据,可省略被修饰的int。(C99标准新增)

signed:修饰整型数据,有符号数据类型。(C89标准新增)

unsigned:修饰整型数据,无符号数据类型。(K&R时期引入)

restrict:用于限定和约束指针,并表明指针是访问一个数据对象的初始且唯一的方式。(C99标准新增)

复杂类型关键字

struct:结构体声明。(K&R时期引入)

union:联合体声明。(K&R时期引入)

enum:枚举声明。(C89标准新增)

typedef:声明类型别名。(K&R时期引入)

sizeof:得到特定类型或特定类型变量的大小。(K&R时期引入)

inline:内联函数用于取代宏定义,会在任何调用它的地方展开。(C99标准新增)

以上就是关于C语言程序设计问题:用内联函数实现求出一维数组的最大值。在主函数中输入数组元素值,调用求最大值函数全部的内容,包括:C语言程序设计问题:用内联函数实现求出一维数组的最大值。在主函数中输入数组元素值,调用求最大值函数、C语言中函数的类型有哪些呢、内联函数调用的是实参还是形参等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/10168431.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-06
下一篇 2023-05-06

发表评论

登录后才能评论

评论列表(0条)

保存