C语言学习笔记---abs()函数和div()函数
C语言库中提供了许多函数,这样需要计算的时候,可以直接借助库函数,而不用自己重新编写函数。今天就来看一下C语言标准库函数里面的整型函数。
int __cdecl abs(int _X);long __cdecl labs(long _X);div_t __cdecl div(int _Numerator,int _Denominator);ldiv_t __cdecl ldiv(long _Numerator,long _Denominator);
abs函数用来计算整数的绝对值,它的参数就是待计算的整数,返回值是计算后的绝对值。编写一段简单的代码,演示一下这个函数的用法。
#include <stdio.h>
#include <stdlib.h>int main(int argc, char** argv) {int x1 = 56,x2 = -89;int y1,y2;y1 = abs(x1);y2 = abs(x2);printf("%d %d",y1,y2);return 0;
}
定义一个正整数,一个负整数,然后用abs函数分别求绝对值,然后将计算的结果打印出来。
如果传递进去的数字不是整数的话,输出的结果是什么呢?
向abs函数里面分别传入一个正的浮点数和一个负的浮点数,计算出来的结果依然是正整数,说明传递参数后,abs函数会将传入的参强制转换为整数,然后在进行计算。
labs函数的功能和abs函数的功能是一样的,不过它主要用来计算长整数的绝对值。
div函数用来计算两个数字相除的商和余数,它有两个参数,用第一个参数(分子)除以第二个参数(分母),然后将商和余数存放在结构体中,返回的结果是一个结构体。它的结构体定义如下:
typedef struct _div_t {int quot;int rem;} div_t;typedef struct _ldiv_t {long quot;long rem;} ldiv_t;
quot 是商,rem 是余数。下面通过一段代码来,来演示一下这个函数的用法。
#include <stdio.h>
#include <stdlib.h>int main(int argc, char** argv) {int x1 = 10,x2 =3;div_t ret;ret = div(x1,x2);printf("%d %d",ret.quot,ret.rem);return 0;
}
计算10 / 3的商和余数,输出结果如下:
同样负整数也可以使用这个函数进行计算。
ldiv函数的功能和div函数的功能一样,不过它主要用来计算长整数的除法。
C语言学习笔记---abs()函数和div()函数相关推荐
- golang 时间戳_go语言学习笔记(13)-defer函数、字符串常用函数和时间日期函数...
函数-defer 在函数中,程序员经常需要创建资源(比如:数据库连接.文件句柄.锁等),为了在函数执行完毕后,及时的释放资源,go的设计者提供defer(延时机制). 细节说明: 1:当go执行到一个 ...
- R语言学习笔记(二)处理函数与基本图形绘制
写在前面 主要内容 数学与统计函数 数据的标准化 概率函数 生成服从正态分布的伪随机数 字符串处理函数 应用于矩阵和数据框的函数 图形绘制 直方图的绘制(hist) 核密度图的绘制 箱线图 经验分布图 ...
- C语言学习笔记(字符串和字符串函数)
九.字符串 单个字符的定义 char i = 'a'; 单个字符创建后为常量 字符串 C语言中没有字符串这种数据类型,可以通过char型数组来替代:数字0(和字符'\0'等价)结尾(0不属于字符串)的 ...
- R语言学习笔记(1)——cut函数
cut()函数用法 cut():将对应的数据划分到对应区间 cut(x,y,lables,right,include.lowest) x:待划分的数据 y:判断依据(区间) right:逻辑值,默认为 ...
- c语言中void arrout,c语言学习笔记(数组、函数
<c语言学习笔记(数组.函数>由会员分享,可在线阅读,更多相关<c语言学习笔记(数组.函数(53页珍藏版)>请在人人文库网上搜索. 1.数组2010-3-29 22:40一维数 ...
- c语言学习笔记【结构体02】结构体指针变量与结构体变量的函数参数,C语言学习笔记结构体02结构体指针变量与结构体变量的函数参数.docx...
C 语言学习笔记[结构体02]结构体指针变量与结构体变量 的函数参数 C 语言学习笔记之结构体指针变量一提指针,那可 是 C 语言的核心了,有多少学子曾拜倒在指针的脚下.单纯的说指针,其实并不难,但是 ...
- r语言c函数怎么用,R语言学习笔记——C#中如何使用R语言setwd()函数
在R语言编译器中,设置当前工作文件夹可以用setwd()函数. > setwd("e://桌面//") > setwd("e:\桌面\") > ...
- C语言学习笔记10-指针(动态内存分配malloc/calloc、realloc、释放free,可变数组实现;Tips:返回指针的函数使用本地变量有风险!;最后:函数指针)
C语言:指针 1. 指针:保存地址的变量 *p (pointer) ,这种变量的值是内存的地址. 取地址符& 只用于获取变量(有地址的东西)的地址:scanf函数-取地址符 地址的大小 ...
- c语言注释语句执行吗,C语言学习笔记之C语言概念解析(附资料分享)每一个语句都必须以分号结尾但预处理命令函数头和花括号“}”之后不能加分号...
[[怪兽爱C语言]C语言学习笔记之C语言概念解析(附资料分享)]https://toutiao.com/group/6582429294901854728/?iid=15906422033&a ...
最新文章
- MySQL中authorization_IdentitiServser4 + Mysql实现Authorization Server
- Minor GC、Major GC和Full GC之间的区别(转)
- 支持本地 持久化的 单机版 consul 服务
- http://www.gamesofdesire.com/
- 使用github+jsdelivr作为视频床
- Kali linux 渗透测试技术之搭建WordPress Turnkey Linux及检测WordPress 应用程序漏洞
- Nginx 过滤模块
- html网址怎么收录,新站如何快速收录 让新网站快速被收录的几点技巧
- 20190910:(leetcode习题)FizzBuzz
- 收藏个支持进度条与文件拖拽上传的js File Uploader
- 初入NLP领域的一些小建议
- 微信小程序弹框如何显示右上角的关闭
- 磁盘管理之动态磁盘和静态磁盘的区别
- cloopen java_GitHub - cloopen/java-sms-sdk: Yuntongxun SMS SDK for Java
- 洛谷 P1538 迎春舞会之数字舞蹈
- 《网络是怎样连接的》-----户根勤,读书笔记
- 经超计算机求职电视剧,经超电影,电视剧全集_经超影视作品大全推荐 - 剧知晓...
- 云原生应用负载均衡系列 (2): 入口流量分发、容错与高可用调度
- 如何解决NavigationDuplicated: Avoided redundant navigation to current location:问题
- bemusic使用帮助