资源描述
实验五 函 数
一、目的要求:
1、掌握函数定义方法及调用规则。
2、掌握实参与形参的对应关系,及“值传递”的方法。
3、掌握函数“地址传递”的方法。
二、实验学时
4学时
三、实验内容:
1.找出下面程序的错误,请改正并上机调试出正确结果。
(1) main( )
{ int x,y;
printf(“%d\n”, sum( x+y ) ) ;
int sum( a , b )
{ int a , b }
return( a + b ) ;}}
(2) main( )
{int a , b , c , x ;
int max( int , int )
scanf( “%d%d%d”, a , b , c ) ;
x=max( int a , int b ) ;
x=max( int x , int c ) ;
printf( “%d”, x ) ;}
int max( x , y )
{ int z ;
z=x>y? x:y ;
return(z);}
2.在程序的空白填入适当内容使程序完整。
计算10个学生1门功课的平均成绩。
float average( float array[10] )
{ int i ;
float aver , sum=array[0] ;
for( i=1 ; ; i++ )
sum= ;
aver=sum/10 ;
return( aver ) ;}
main( )
{ float score[10] , aver ; int i ;
for( i=0 ; i<10 ; i++ )
scanf( “%f”, & score[i] ) ;
aver= ;
printf( “%f” , aver ) ;}
3.阅读下面程序说明功能,写出运行结果并上机调试。
main( )
{ int a[5]={5, 10, -7, 3, 7}, i , t , j ;
sort(a);
for( i=0 ; i<=4 ; i++ )
printf( “%d”,a[i] ) ;}
sort( int a[ ] )
{ int i , j , t ;
for( i=0 ; i<4 ; i++ )
for( j=0 ; j<4-1 ; j++ )
if( a[j]>a[j+1] )
{ t=a[j] ; a[j]=a[j+1] ; a[j+1]=t ;}}
4.编程题:
(1) 编写通过调用函数,找出任意三数最小值程序
(2) 编写函数判断某数是否素数,是返回1,否则返回0,在main函数中调用该函数。
(3) 编写函数,由实参传来字符串,统计字符串中字母,数字,空格和其它字符的个数。在主函数中输入字符串及输出上述结果。
(4) 编写函数将一维数组中每个元素值加1后输出。主函数中完成输入输出过程。
展开阅读全文