@SuHongjun
2020-04-20T00:31:05.000000Z
字数 1281
阅读 480
C语言
2020春季学期
知识点:
函数定义及调用--例1:
//函数定义
int f() //函数头:int 是函数的返回值类型,f是函数名,()内部的内容是形参列表,此处为空
{ //函数体
}
main()
{
f(); //函数调用
}
函数定义及调用--例2:
#include "stdio.h"
//函数定义
int f(int x, int y) //函数头:int:函数的返回类型, f:函数名, ()内是参数列表,x,y是形参
{ //函数体
return x+y; //返回值
}
main()
{
int a;
a = f(2,3); //函数调用:2,3称为实参
printf("%d\n", a);
}
新套路1(采用了用户自定义函数之后的编程套路1)
#include "stdio.h"
//函数定义
/*
这里就是你的用户自定义函数的代码
*/
main()
{
//变量定义
//提示及输入
//计算、输出(其间以某种形式直接或者间接调用 用户自定义函数)
}
新套路1的例子:
例1:
输出0--5000年内所有的闰年
#include "stdio.h"
int IsRunNian(int year)
{
if((year%400==0) || (year%4==0 && year%100!=0))
return 1;
else
return 0;
}
main()
{
int y;
for(y=0; y<=5000; y++)
{
if(IsRunNian(y)) //if(IsRunNian(y) == 1)
printf("%d\t", y);
}
}
例1的另一种实现方式:(规则之下,编程有相当的灵活性)
#include "stdio.h"
void ShuChuRunNian(int start,int end)
{
int i;
for(i=start; i<=end; i++)
if(i%400 == 0 || i%4 == 0 && i%100 != 0)
printf("%5d",i);
}
main()
{
ShuChuRunNian(0,5000);
}
例2:
输出20000以内的所有质数
#include "stdio.h"
int IsPrime(int n)
{
int IsZhiShu,i;
IsZhiShu = 1;
for(i=2; i<n; i++)
{
if(n % i == 0)
{
IsZhiShu = 0;
return IsZhiShu;
}
}
return IsZhiShu;
}
main()
{
int x;
for(x=2; x<=20000; x++)
if(IsPrime(x)) //if(IsPrime(x) == 1)
printf("%-6d",x);
}
例2的第二种实现方式:
#include "stdio.h"
void OutPutZS(int begin, int end)
{
int n,i,ZS;
for(n=begin; n<=end; n++)
{
ZS =1;
for(i=2; i<n; i++)
{
if(n%i == 0)
{
ZS = 0;
break;
}
}
if(ZS) //if( ZS == 1)
printf("%d\t", n);
}
printf("\n");
}
main()
{
OutPutZS(2,20000);
}
函数背后的思想:
模块化:不要重复造轮子