C语言默认参数值的实现

2024-07-17

C语言默认参数值的实现

1.C语言默认参数值的实现 篇一

C语言结构体指针变量作函数参数

在ANSI C标准中允许用结构变量作函数参数进行整体传送。但是这种传送要将全部成员逐个传送,特别是成员为数组时将会使传送的时间和空间开销很大,严重地降低了程序的效率。因此最好的办法就是使用指针,即用指针变量作函数参数进行传送。这时现金网96y.org由实参传向形参的只是地址,从而减少了时间和空间的开销。

计算一组学生的平均成绩和不及格人数。用结构指针变量作函数参数编程。

struct stu{

int num;

char *name;

char sex;

float score;

}boy[5]={

{101,Li ping,M,45},{102,Zhang ping,M,62.5},{103,He fang,F,92.5},{104,Cheng ling,F,87},{105,Wang ming,M,58}

};

main(){

struct stu *ps;

void ave(struct stu *ps);

ps=boy;

ave(ps);

}

void ave(struct stu *ps){

int c=0,i;

float ave,s=0;

for(i=0;i5;i++,ps++){

s+=ps-score;

if(ps-score60)c+=1;

}

printf(s=%fn,s);

ave=s/5;

printf(average=%fncount=%dn,ave,c);

}

本程序中定义了函数ave,其形参为结构指针变量ps。boy被定义为外部结构数组,因此在整个源程序中有效。在main函数中定义说明了结构指针变量ps,并把boy的首地址赋予它,使ps指向boy数组。然后博彩娱乐棋牌q07i5.org以ps作实参调用函数ave。在函数ave中完成计算平均成绩和统计不及格人数的工作并输出结果。

由于本程序全部采用指针变量作运算和处理,故速度更快,程序效率更高。

上一篇:人民满意的教师演讲稿下一篇:微课程设计文字说明