day_08函数

C语言中的函数以及循环结构的实现方式

函数的2种使用方式:

1、被别的函数调用;

2、自己调用自己(递归)。


sizeof  的用法和特点。n=sizeof(a)/sizeof(int);






循环结构的实现方式:(1+..100)
1.while
2.do...while
3.for
4.if...goto...
5.递归 (函数自己调用自己)


goto语句的作用:无条件跳转


**警告**滥用goto语句会导致程序执行流程混乱,代码可读性大大降低,所以建议尽量不使用goto语句






break和continue语句在循环结构中的作用


break语句:结束本层循环,即退出本层循环
continue语句:结束本次循环,即进入下次循环


循环结构可以嵌套使用(二重循环或多重循环),但建议嵌套层次不要太多,否则影响代码可读性




数据交换


1.中间变量

c=a; a=b;b=c;

2.变量特性

a=a+b; b=a-b;a=a-b;

3.异或   a=a^b;  b=a^b;  a=a^b;
a^=b; b^=a;a^=b;






函数(Function):实现某个特定功能的代码块,相当于一个功能模块


在C语言项目开发中,一个复杂的项目可以划分为若干个功能模块,而每个功能模块可以通过一个函数去实现


函数分为两类:库函数和自定义函数


库函数:系统已经定义好,我们直接调用的函数,无需关注其实现细节。例如:printf, scanf, getchar等


C语言提供的库函数称为标准库函数,大概有300多个,例如:printf, scanf, getchar等
有些库函数是操作系统或第三方提供的,它们就不是标准库函数了,也不能像标准库函数一样跨平台使用了


C/C++语言是跨平台(源代码级别,不是二进制级别)的,即C/C++语言源代码在不同的操作系统平台上可以通用,不需要任何修改


平台是指操作系统(例如,Windows平台,Linux平台,Android平台等)或软件运行环境(例如,Java平台,.NET平台)






常用库函数:


1.时间处理相关的库函数:time(获取系统当前时间戳,即距离1970年1月1日0时0分0秒的秒数)
2.生成随机数相关的库函数:srand(设置随机数种子),rand(产生一个随机数)


rand函数生成的是伪随机数(pseudo-rand number),并不是真正的随机数,每次运行程序生成的随机数序列是一样的


操作系统内部维护着一个随机数序列,我们每次调用rand函数只是从这个序列中的某个位置开始依次获取一个随机数,这个取随机数的起始位置是由随机数种子决定的,如果随机数种子相同,则每次获取的随机数序列将是一样的,所以如果希望产生不同的随机数序列,就应该在每次产生随机数序列之前设置一个不同的随机数种子


3.执行一个程序:system


4.休眠函数:sleep(以秒为单位), usleep(以微秒为单位),注意它们不是标准库函数,是Linux系统提供的库函数,只能用于Linux平台



小结:

学习了函数。

一个程序中有且只有一个main()函数;函数的两种使用方式;

函数的声明:  int my_hanshu(int m);  

 函数的说明:int  my_hanshu(int m)  

{ 函数体 }  

 int 决定函数返回值得类型。

后面括号内的int (int),决定形参的数据类型。

关于形参和实参的事;有形参的话,调用的时候必须给它实参,形参的作用:接收调用时传过来的实参。形参有多少个,实参就给多少个,并与括号内的形参的数据类型一一对应。

之后在代码编写的时候可以尝试加上函数来练练手。
SQL 中的 `LAST_DAY` 函数用于获取指定日期所在月份的最后一天。该函数在不同的数据库系统中具有相似的功能,但在语法上可能存在细微差异。以下是一些常见的用法及示例。 ### 获取当前日期所在月份的最后一天 在大多数 SQL 数据库中,可以直接使用 `LAST_DAY` 函数来获取当前日期所在月份的最后一天。 ```sql SELECT LAST_DAY(CURRENT_DATE) AS last_day_of_month; ``` 此查询将返回当前日期所在月份的最后一天[^2]。 ### 获取指定日期所在月份的最后一天 可以将 `LAST_DAY` 函数与特定日期一起使用,以获取该日期所在月份的最后一天。 ```sql SELECT LAST_DAY('2016-08-16') AS last_day; -- 结果:2016-08-31 ``` 此查询将返回 `2016-08-31`,即 `2016-08-16` 所在月份的最后一天[^2]。 ### 获取下个月的最后一天 有时可能需要获取下个月的最后一天。可以通过先获取当前日期的下个月,然后再使用 `LAST_DAY` 函数来实现。 ```sql SELECT LAST_DAY(DATE_ADD(CURRENT_DATE, INTERVAL 1 MONTH)) AS next_month_last_day; ``` 此查询首先使用 `DATE_ADD` 函数将当前日期增加一个月,然后使用 `LAST_DAY` 函数获取下个月的最后一天[^1]。 ### 获取当前月份的第一天 虽然 `LAST_DAY` 函数主要用于获取月份的最后一天,但也可以结合其他函数来获取月份的第一天。 ```sql SELECT DATE_ADD(LAST_DAY(DATE_ADD(CURRENT_DATE, INTERVAL -1 MONTH)), INTERVAL 1 DAY) AS first_day_of_month; ``` 此查询首先使用 `DATE_ADD` 函数将当前日期减去一个月,然后使用 `LAST_DAY` 函数获取上个月的最后一天,最后再使用 `DATE_ADD` 函数将日期加一天,从而获取当前月份的第一天[^2]。 ### 使用 `TRUNC` 函数获取月份的第一天 在某些数据库系统中,还可以使用 `TRUNC` 函数来获取月份的第一天,然后再使用 `LAST_DAY` 函数获取月份的最后一天。 ```sql SELECT TRUNC(CURRENT_DATE, 'MONTH') AS first_day_of_month; SELECT LAST_DAY(TRUNC(CURRENT_DATE, 'MONTH')) AS last_day_of_month; ``` 此查询首先使用 `TRUNC` 函数将当前日期截断到月份的第一天,然后使用 `LAST_DAY` 函数获取该月份的最后一天[^2]。 ### ObjectScript 调用 `LAST_DAY` 函数 在某些特定的环境中,如 InterSystems Caché,可以使用 `ObjectScript` 来调用 `LAST_DAY` 函数。 ```objectscript WRITE $SYSTEM.SQL.Functions.LASTDAY("2018-02-22"),! -- 输出:2018-02-28 WRITE $SYSTEM.SQL.Functions.LASTDAY(64701) -- 输出:2018-02-28 ``` 此示例展示了如何使用 `ObjectScript` 调用 `LAST_DAY` 函数来获取指定日期所在月份的最后一天[^3]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值