一、为什么使用函数?
#include <stdio.h>
void input()
{
printf("代码很长的一个功能");
}
void Sign_S()
{
printf("代码很长的一个功能");
}
void sink()
{
printf("代码很长的一个功能");
}
void delect()
{
printf("代码很长的一个功能");
}
void main()
{
int sign;
printf("输入:1-登记,2-查询,3-添加,4-删除\n");
scanf("%d",&sign);
switch(sign)
{
case 1:input();break;
case 2:Sign_S();break;
case 3:sink();break;
case 4:delect();break;
}
}
#include <stdio.h>
void print_x();
void print_J();
void main()
{
print_x();
print_J();
print_J();
}
void print_x()
{
printf("*********************************************");
printf("*********************************************");
printf("*********************************************");
printf("*********************************************");
printf("*********************************************");
printf("*********************************************");
printf("*********************************************");
printf("*********************************************");
}
void print_J()
{
printf("+++++++++++++++++++++++++++++++++++++++++++++");
printf("+++++++++++++++++++++++++++++++++++++++++++++");
printf("+++++++++++++++++++++++++++++++++++++++++++++");
printf("+++++++++++++++++++++++++++++++++++++++++++++");
printf("+++++++++++++++++++++++++++++++++++++++++++++");
printf("+++++++++++++++++++++++++++++++++++++++++++++");
printf("+++++++++++++++++++++++++++++++++++++++++++++");
}
二、函数的定义,调用,声名
1.函数的定义,调用
- 函数定义:类型+函数名称+()
- 函数的调用:想要调用的函数名+()
- 程序的执行从main函数开始,函数调用完成之后返回调用的位置接着执行
- 函数类型没有返回值的使用void,有返回值的根据返回类型定义
- 有参函数(实参可以是常量,变量,表达式;形参只能是变量)
- 无参函数
void wc_hanshu() - 空函数
#include <stdio.h>
int sum();
void main()
{
int a;
int x=5,y=3;
sum();
}
int sum()
{
}
2. 函数的原型声名
- 如果被调函数在主调用函数的前面不需要声名
- 如果被调用的函数类型为整型,则允许在调用函数前不做声明。
#include <stdio.h>
int sum(float a,float b);
void main()
{
int a;
float x=5.4,y=3.9;
a=sum(x,y);
printf("%d",a);
}
int sum(float a,float b)
{
float z;
z = a+b;
return z;
}
#include <stdio.h>
int sum(float a,float b)
{
float z;
z = a+b;
return z;
}
void main()
{
int a;
float x=5.4,y=3.9;
a=sum(x,y);
printf("%d",a);
}
3.举例
- 编写判断一个数为素数的函数,输出 100 到 200 之间的素数。
#include <stdio.h>
void main()
{
int pd(int x);
int result,i;
for(i=100;i<=200;i++)
{
result = pd(i);
if(result == 0)
printf("%d是素数\n",i);
}
}
int pd(int x)
{
int flag=0;
int i;
for(i=2;i<x;i++)
{
if(x%i==0)
{
flag = 1;
break;
}
}
return (flag);
}