=======变量和数据类型=========

说      明:字符型   短整型  整型  长整型  单精度浮点型  双精度浮点型 无类型

数据类型:char   short  int  long  float  double   void

32位环境下长度:1  2  4  4  4  8  

======在屏幕上输出各种类型的数据====

puts 是输出字符串的

printf 不仅可以输出字符串,还可以输出整数、小数、单个字符等,并且输出格式自己定义,例如:

  1.以十进制、八进制、十六进制形式输出;

  2. 要求输出的数字占n 个字符的位置;

  3. 控制小鼠的位数。

printf 是 print format 的缩写,意思是:格式化打印,

  int abc = 9;

  printf("%d",abc);

%d : d 是decimal 的缩写,意思是十进制数,%d 表示以十进制整数的形式输出。

%d : 格式控制符,它指明了以何种形式输出数据。格式控制符均以%开头。

%d: 以十进制形式输出一个整数。

%c : 输出一个字符, c 是character 的简写。

%s:输出一个字符串。s 是string 的简写。

%f :  输出一个小数。f 是float 的简写。

“\n” : 换行符。

%hd: 用来输出short int  类型,hd 是short decimal 的简写。

%ld: 用来输出long int 类型,ld 是long  decimal 的简写。

%f:以十进制形式输出float 类型;

%lf:以十进制形式输出double 类型;

%e:以指数形式输出float 类型,输出结果中的e 小写。

%E:以指数形式输出float 类型,输出结果中的E大写。

%le 以指数形式输出ouble类型,输出结果中的e 小写。

%lE以指数形式输出double 类型,输出结果中的E大写。

%g: 对比小数的十进制形式和指数形式,以最短的方式类输出小数,让输出的结果更加简短。

puts 输出完成之后会自动换行,printf 不会,需要自己添加换行符,这是puts 和printf 在输出字符串时的一个区别。

puts连续输出长字符串时,可以直接使用引号进行区分开。

例如: puts(

      "1111111111111111"

      "22222222222222"

      "33333333333333"

      );

===========操作符=========

sizeof 操作符: 用于获取某个数据类型的长度。

==========二进制=======

注意:标准的C语言并不支持下面的二进制写法,只是某些编译器自己进行了扩展,才支持二进制数字。

二进制:以Ob 或者OB开头,不区分大小写。

例如:int a = Ob101;  // 换算成十进制为5

八进制:int a = 015; 【数字0开头】// 换算成十进制为13

C语言中常用的整数有short 、int 、long 三种类型,通过printf 函数,可以将它们以八进制、十进制和十六进制形式输出。

  输   出:short   int   long 类型

  八进制:%ho  %o  %lo

  十进制:%hd  %d  %ld

  十六进制:%hx或者%hX  %x或者%X   %lx 或者%lX

注意:十六进制数字的表示用到了英文字母,有大小写之分,x小写表示以小写形式输出十六进制数字,X大写,表示以大写字母的形式输出十六进制数。

在进行不同进制输出的时候,需要在输出时带上特定的前缀。在格式控制符中加上#即可输出前缀,例如:%#、%#o 等。

=========符号位======

如果确定数字只能是正数,例如班级学生的人数、字符串的长度、内存地址等,这个时候符号位就是多余的了,不如删除符号位,把所有的位都用来存储数值,这样能表示的数值范围就更大(大一倍)。使用unsigned 关键字。

例如:unsigned int a = 1002;

======C语言中的小数(float double)==========

指数形式:aEn,或者aen, a:尾数部分,是一个十进制数,n 为指数部分,是一个十进制整数。E或者e 是固定的字符,用于分割尾数部分和指数部分。挣个表达式等价于;a* 10的N次方。

C语言书籍入门---第三章的更多相关文章

  1. C语言编程入门之--第二章编译环境搭建

    第二章 编译环境搭建 导读:C语言程序如何工作,首先需要编译链接成可执行文件,然后就可以运行在不同的环境中,这个“环境”的意思就是比如说,电脑,手机,路由器,蓝牙音箱等等智能设备中,其中编译器启到了关 ...

  2. C语言编程入门之--第一章初识程序

    第一章 初识程序 导读:计算机程序无时不刻的影响着人类的生活,现代社会已经离不开程序,程序的作用如此巨大,那么程序到底是什么呢?本章主要讨论程序的概念,唤起读者对程序的兴趣,同时对C语言程序与其它语言 ...

  3. c语言学习笔记第三章———数据和C

    B站有视频演示 本章将会讲解c语言的数据定义和使用,您将会了解int.float.double.char的含义,了解命名的规则,对c语言会有更加深刻的认识. 变量命名: 我们先讲上次视频没讲的变量命名 ...

  4. 数据结构(C语言版)---第三章栈和队列 3.4.2 队列的链式表示和实现(循环队列)

    这个是循环队列的实现,至于串及数组这两章,等有空再看,下面将学习树. 源码如下: #include <stdio.h> #include <stdlib.h> #define ...

  5. HTML与CSS入门——第三章 理解HTML和XHTML的关系

    知识点: 1.以HTML创建一个简单网页的方法 2.包含每个网页必须有的所有HTML标签的方法 3.用段落和换行组织页面的方法 4.用标题组织内容的方法 5.HTML.XML.XHTML和HTML5之 ...

  6. ES6标准入门 第三章:变量的解构赋值

    解构赋值:从数组和对象中提取值,对变量进行赋值. 本质上,这种写法属于“匹配模式”:只要等号两边的模式相同,左边的变量就会被赋予对应的值. 1.数组的结解构赋值 基本用法 let [foo, [[ba ...

  7. MySQL----MySQL数据库入门----第三章 添加、更新与删除数据

    3.1 添加数据 ①为所有字段添加数据 方法1:字段包含全部定义的字段 insert into 表名(字段1,字段2...字段n) values(值1,值2,......,值n); 方法2:值必须与字 ...

  8. 明解C语言 中级篇 第三章答案

    练习3-1 /* 猜拳游戏(其四:分割函数/显示成绩)*/ #include <time.h> #include <stdio.h> #include <stdlib.h ...

  9. C语言进阶学习第三章

    以下记录动态内存分配: 1.malloc和free malloc和free分别用于执行动态内存分配和释放.这些函数维护一个可用内存池,当一个程序需要一些内存时,调用malloc函数,malloc从内存 ...

随机推荐

  1. Python 命令行参数的输入方式(使用pycharm)

    形式一: 第一个红色框为命令行参数 第二个框为控制台模式(Terminal) 形式二 点击运行:点击红色框  编辑配置 如下图:红色框即为设置的命令行参数

  2. 浏览器 User-Agent 整理

    也可以去这里查询:http://tools.jb51.net/table/useragent window.navigator.userAgent 1) Chrome Win7: Mozilla/5. ...

  3. POJ1797 Heavy Transportation (堆优化的Dijkstra变形)

    Background Hugo Heavy is happy. After the breakdown of the Cargolifter project he can now expand bus ...

  4. 洛谷P1060开心的金明(滚动数组优化)

    题目描述 金明今天很开心,家里购置的新房就要领钥匙了,新房里有一间他自己专用的很宽敞的房间.更让他高兴的是,妈妈昨天对他说:“你的房间需要购买哪些物品,怎么布置,你说了算,只要不超过NNN元钱就行”. ...

  5. java里判断字符串是否为数字类型的方法

    String type = "数字类型";if(StringUtils.isNotBlank(value)){ //区分正负数 if(value.startsWith(" ...

  6. leetcode 0211

    目录 ✅ 1217. 玩筹码 描述 解答 c java py ✅ 206. 反转链表 描述 解答 c java py ✅ 922. 按奇偶排序数组 II 描述 解答 c 双指针soldier tddo ...

  7. JS动态添加删除html

    本功能要求是页面传一个List 集合给后台而且页面可以动态添加删除html代码需求如下: 下面是jsp页面代码 <%@ page language="java" pageEn ...

  8. AS布局篇

    LinearLayout 线性布局 RelativeLayout 相对布局 FrameLayout 帧布局 AbsoluteLayout绝对布局 TableLayout 表格布局 GridLayout ...

  9. Android Studio中 安卓模拟器 联网

    方案一:之前做测试的时候发现虚拟机无法联网(浏览器打开 www.baidu.com, 显示 403 forbidden): 解决方案:关闭已经打开的虚拟机,进入到 SDK 安装目录下,按住 shift ...

  10. K8S-OVS使用Openvswitch为提供SDN功能支持单租户模式和多租户模式

    k8s-ovs ============================== 最近在寻求一些工作机会,如果有kubernetes相关研发招聘的朋友,欢迎随时联系我.我的个人简历可以通过百度网盘:htt ...