微信搜索关注"91考试网"公众号,领30元,获取公务员、事业编、教师等考试资料40G!
16有一个一维数组,内放10个学生成绩,写一个函数,求出平均分、最高分和最低分。
#include <stdio.h>
float Max=0,Min=0; /*全局变量??*/
void main()
{ float average(float array[ ],int n);
float ave,score[10];
int i;
for(i=0;i<10;i++)
scanf(″%f″,&score[i]);
ave= average(score,10);
printf(“max=%6.2f\nmin=%6.2f\n
average=%6.2f\n“,Max,Min,ave);
}
float average(float array[ ],int n)
{ int i;
float aver,sum=array[0];
Max=Min=array[0];
for(i=1;i<n;i++)
{ if(array[i]>Max)Max=array[i];
else if(array[i]<Min)
Min= array[i];
sum=sum+array[i];
}
aver=sum/n;
return(aver);
}
17外部变量与局部变量同名
#include <stdio.h>
int a=3,b=5; /* a,b为外部变量*/ a,b作用范围
void main ( )
{ int a=8; /*a为局部变量 */ 局部变量a作用范围
printf (″%d″, max (a,b)); 全局变量b的作用范围
}
max (int a, int b) /*a,b为局部变量 */
{ int c;
c=a>b?a∶b; 形参a、b作用范围
return (c);
}
运行结果为 8
18输出1到5的阶乘值
#include <stdio.h>
void main()
{int fac(int n);
int i;
for(i=1;i<=5;i++)
printf(″%d!=%d\n″,i,fac(i));
}
int fac(int n)
{static int f=1;
f=f*n;
return(f);
}
19调用函数,求3个整数中的大者。
#include <stdio.h>
void main()
{int max( ); /* 函数声明 */
extern int A,B,C; /* 外部变量声明 */
printf("Please enter three integer numbers:");
scanf("%d %d %d",&A,&B,&C); /* 输入外部变量的值 */
printf("max is %d\n",max());
}
int A ,B ,C; /* 定义外部变量 */
int max( )
{int m;
m=A>B?A:B;
if (C>m) m=C;
return(m); 运行结果为:Please enter three integer numbers:34 –21 78max is 78
}