C语言函数的定义和使用.doc
文本预览下载声明
讲义十三 C语言函数的定义与使用
一、函数的定义:
1、函数的定义:
返回类型 函数名(参数列表){
函数体;
}
如:
1)带返回值的定义
int sum1(int m){
int i,sum=0;
for(i=1;i=m;i++)
sum=sum+i;
return sum;
}
2)没有返回值
void sum2(int m){
int I,sum=0;
for(i=1;i=m;i++)
sum=sum+i;
s=sum;
}
2、函数的引用:
1)带返回值的引用
main(){
int n,s;
s=sum(n);
printf(“%d”,s);
getch();
}
2)没有返回值的引用
Int s;
main(){
int n;
sum2(n);
printf(“%d”,s);
getch();
}
完整的源程序:
#include conio.h
#include stdio.h
int s;
int sum1(int m){
int i,sum=0;
for(i=1;i=m;i++)
sum=sum+i;
return sum;
}
void sum2(int m){
int i,sum=0;
for(i=1;i=m;i++)
sum=sum+i;
s=sum;
}
main(){
int n,s;
scanf(%d,n);
s=sum1(n);
printf(sum1(n)=%d\n,s);
getch();
sum2(n);
printf(sum2(n)=%d,s);
getch();
}
3)定义函数的目的:将程序按功能分块,方便程序的使用、管理、阅读、和调试。
二、函数的应用
实例1:把选择排序部分用函数实现。
#include stdio.h
#include conio.h
#include time.h
long a[100],n;//a[100],n均为全局变量
void paixu(){
int i,j,min;
long t;
for(i=1;i=n;i++)
{min=i;
for(j=i+1;j=n;j++)
if (a[j]a[min]) min=j;
t=a[i];a[i]=a[min];a[min]=t;
}
}
main(){
int i,j,min;
scanf(%d,n);
for(i=1;i=n;i++)
scanf(%d,a[i]);
//选择排序
paixu();
for(i=1;i=n;i++)
printf(%d\t,a[i]);
printf(\n);
getch();
}
实例2:两个数对调的函数实现(值传递和地址传递)
#include stdio.h
#include conio.h
int a=3,b=4;
void swap1(int a,int b){//值传递,也成为单向传递
int t;
t=a;a=b;b=t;
}
void swap2(int *a,int *b){//地址传递,也成为双向传递
int t;
t=*a;*a=*b;*b=t;
}
main(){
swap1(a,b);
printf(a=%d,b=%d\n,a,b);
swap2(a,b);
printf(a=%d,b=%d\n,a,b);
getch();
}
三、文件的读写操作:
文件读写操作的一般格式:
FILE *fp1,fp2;
fp1=fopen(“文件名”,”r”);
fp2=fopen(“文件名”,”w”);
fscanf(fp1,”…”,…);
fprintf(fp2,”….”,….);
fclose(fp1);
fclose(fp2);
注意:文件在程序结束时,必须关闭。
实例3:从文件data.in中读入n个数并求和,将和输出到文件d
显示全部