小白学编程day14

函数


函数其实是子程序
分类:库函数、自定义函数


一、库函数

IO函数:printf scanf getchar putchar
字符串操作函数:strcmp strlen
字符操作函数:toupper
内存操作函数:memcpy memcmp memset
时间、日期函数:time
数学函数:sqrt pow

其他库函数:

二、自定义函数


char *strcpy(char*strDestination,const char*strSourse)
函数的返回类型 函数名 函数的参数
自定义函数和库函数一样,有函数名、返回值类型、函数参数,可以由程序员自己设计,给了我们很大的发挥空间。

函数的组成:函数名、返回类型、函数参数、函数体

//交换两个变量的值的函数
#include<stdio.h>
void swap(int* pa, int* pb)
{
	int z = 0;
	z = *pa;
	*pa = *pb;
	*pb = z;
}
int main()
{
	int a = 10;
	int b = 20;
	int* pa = &a;//pa就是一个指针变量
	printf("交换前:a = % d, b = % d\n", a, b);
	swap(&a, &b);
	printf("交换后:a = % d, b = % d \n", a, b);
}

当要改变函数的值的时候要用指针传址调用

三、函数的参数

实际参数

真实传给函数的参数叫实参,必须要有确定的值来进行传递。可以是常量、变量、表达式、函数等。

形式参数

函数名称后面括号中的变量叫形参,只有在函数被调用的过程中才会实例化(分配内存单元),调用后就被自动销毁了,只在函数内有效。

#include<stdio.h>
void Swap(int x, int y)
{
	int t=0;
	t = x;
	x = y;
	y = t;
}
//Swap被调用的时候,实参传递给形参,其实形参是实参的一份临时拷贝。改变形参不能改变实参

传值调用

四、函数的调用

传值调用

传址调用:将外部变量的内存地址传递给函数参数,可以将函数内和函数外部的变量建立联系

//写一个函数判断是不是素数
#include<math.h>
int is_prime(int n)
{
	int j = 0;
	for(j=2;j<n;j++)
	{
		if (n % j == 0)
			return 0;
	}
	return 1;
}
int main()
{
	int i = 0;
	int count = 0;
	for (i = 100; i <= 200; i++)
	{

		if (is_prime(i) == 1)
		{
			count++;
			printf("%d ", i);
		}	
	}
	printf("\ncount=%d\n", count);
	return 0;
}
//判断一年是不是闰年的函数
#include<stdio.h>
int is_leap_year(int n)
{
	int j = 0;
	if (n % 400 == 0 || (n % 4 == 0 && n % 100 != 0))
	{
		return 1;
	}
	return 0;
}
int main()
{
	int count = 0;
	int y = 0;
	for (y = 1000; y <= 2000; y++)
	{
		if (is_leap_year(y) == 1)
		{
			count++;
			printf("%d ", y);
		}
	}
	printf("%d\n", count);
		return 0;
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Pinkagable

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值