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()函数相关推荐

  1. golang 时间戳_go语言学习笔记(13)-defer函数、字符串常用函数和时间日期函数...

    函数-defer 在函数中,程序员经常需要创建资源(比如:数据库连接.文件句柄.锁等),为了在函数执行完毕后,及时的释放资源,go的设计者提供defer(延时机制). 细节说明: 1:当go执行到一个 ...

  2. R语言学习笔记(二)处理函数与基本图形绘制

    写在前面 主要内容 数学与统计函数 数据的标准化 概率函数 生成服从正态分布的伪随机数 字符串处理函数 应用于矩阵和数据框的函数 图形绘制 直方图的绘制(hist) 核密度图的绘制 箱线图 经验分布图 ...

  3. C语言学习笔记(字符串和字符串函数)

    九.字符串 单个字符的定义 char i = 'a'; 单个字符创建后为常量 字符串 C语言中没有字符串这种数据类型,可以通过char型数组来替代:数字0(和字符'\0'等价)结尾(0不属于字符串)的 ...

  4. R语言学习笔记(1)——cut函数

    cut()函数用法 cut():将对应的数据划分到对应区间 cut(x,y,lables,right,include.lowest) x:待划分的数据 y:判断依据(区间) right:逻辑值,默认为 ...

  5. c语言中void arrout,c语言学习笔记(数组、函数

    <c语言学习笔记(数组.函数>由会员分享,可在线阅读,更多相关<c语言学习笔记(数组.函数(53页珍藏版)>请在人人文库网上搜索. 1.数组2010-3-29 22:40一维数 ...

  6. c语言学习笔记【结构体02】结构体指针变量与结构体变量的函数参数,C语言学习笔记结构体02结构体指针变量与结构体变量的函数参数.docx...

    C 语言学习笔记[结构体02]结构体指针变量与结构体变量 的函数参数 C 语言学习笔记之结构体指针变量一提指针,那可 是 C 语言的核心了,有多少学子曾拜倒在指针的脚下.单纯的说指针,其实并不难,但是 ...

  7. r语言c函数怎么用,R语言学习笔记——C#中如何使用R语言setwd()函数

    在R语言编译器中,设置当前工作文件夹可以用setwd()函数. > setwd("e://桌面//") > setwd("e:\桌面\") > ...

  8. C语言学习笔记10-指针(动态内存分配malloc/calloc、realloc、释放free,可变数组实现;Tips:返回指针的函数使用本地变量有风险!;最后:函数指针)

    C语言:指针 1. 指针:保存地址的变量 *p (pointer) ,这种变量的值是内存的地址.   取地址符& 只用于获取变量(有地址的东西)的地址:scanf函数-取地址符   地址的大小 ...

  9. c语言注释语句执行吗,C语言学习笔记之C语言概念解析(附资料分享)每一个语句都必须以分号结尾但预处理命令函数头和花括号“}”之后不能加分号...

    [[怪兽爱C语言]C语言学习笔记之C语言概念解析(附资料分享)]https://toutiao.com/group/6582429294901854728/?iid=15906422033&a ...

最新文章

  1. MySQL中authorization_IdentitiServser4 + Mysql实现Authorization Server
  2. Minor GC、Major GC和Full GC之间的区别(转)
  3. 支持本地 持久化的 单机版 consul 服务
  4. http://www.gamesofdesire.com/
  5. 使用github+jsdelivr作为视频床
  6. Kali linux 渗透测试技术之搭建WordPress Turnkey Linux及检测WordPress 应用程序漏洞
  7. Nginx 过滤模块
  8. html网址怎么收录,新站如何快速收录 让新网站快速被收录的几点技巧
  9. 20190910:(leetcode习题)FizzBuzz
  10. 收藏个支持进度条与文件拖拽上传的js File Uploader
  11. 初入NLP领域的一些小建议
  12. 微信小程序弹框如何显示右上角的关闭
  13. 磁盘管理之动态磁盘和静态磁盘的区别
  14. cloopen java_GitHub - cloopen/java-sms-sdk: Yuntongxun SMS SDK for Java
  15. 洛谷 P1538 迎春舞会之数字舞蹈
  16. 《网络是怎样连接的》-----户根勤,读书笔记
  17. 经超计算机求职电视剧,经超电影,电视剧全集_经超影视作品大全推荐 - 剧知晓...
  18. 云原生应用负载均衡系列 (2): 入口流量分发、容错与高可用调度
  19. 如何解决NavigationDuplicated: Avoided redundant navigation to current location:问题
  20. bemusic使用帮助

热门文章

  1. unix 网络编程总结 二
  2. 莫比乌斯反演习题总结
  3. vc建立一个窗口的流程
  4. Aptana Studio 3 如何汉化,实现简体中文版
  5. SQL基础实例(学生课程系统)
  6. 【Java】使用MapReduce程序统计UV数量
  7. 接口测试工具--Apipost不同脚本的作用
  8. wxt_hillwill的知识脉络
  9. stm32实验报告心得体会_嵌入式第9次实验报告
  10. c#12星座速配代码_原来12星座的软件工程师是这样的