数据类型、常量、变量、printf、scanf和运算符

  1. 数据类型
  2. 常量
  3. 变量
  4. printf函数介绍
  5. scanf函数介绍
  6. 运算符

数据类型

数据类型是指数据在内存中存储的方式。

C语言中有5大数据类型:基本类型、构造类型、指针类型、空类型、定义类型。

C语言中常见的数据类型:

各种数据类型在内存中占用的空间大小:(单位:字节)(1 Byte = 8 bit)


16位编译器


32位编译器


64位编译器


char


1


1


1


Int


2


4


4


Float


4


4


4


Double


8


8


8


Short


2


2


2


Long


4


4


8


Long long


8


8


8


Void *(指针变量)


2


4


8

各种数据的表示范围:

常量

常量就是在内存中固定的数据,不可改变其内容。

常见分类:

  1. 整型常量

a)     十进制常量,和自然界十进制表示法一致

b)     二进制常量,以0b(0B)开头,例如:0b1100

c)      八进制常量,以0开头,例如:045

d)     十六进制常量,以0x开头,例如:0x123

  1. 实型常量

a)     单精度常量,小数后面加f表示单精度常量。 例如:3.14f

b)     双精度常量,和自然界小数表示方法一致。 例如:3.1415926     3.8e5(或3.8E5 相当于3.8 x 105)

  1. 字符型常量

用单引号括起来的单个字符表示。

a) 普通字符:例如: ‘A’ ‘b’ ‘$’等等

b) 转义字符:例如:’\n’ ‘\t’ ‘%%’ 等等

  1. 字符串常量

用双引号括起来的一系列字符串。 例如:”Hello World!\n”    “”表示一个空字符串

  1. 符号常量

也叫宏常量。 例如: #define PI 3.1415926

变量

所谓变量,即代表内存中某个空间的值是可变的。

1. 变量的定义:变量类型  变量名

2. 变量的初始化

a) 定义时初始化: int a = 10;

定义时全部初始化: int a = 10, b=11;

定义时部分初始化: int a =2, b;

b) 先定义后初始化:int b; b = 10;

c) 用其他变量初始化: int a=10, b; b = a;

d) 连续初始化:double pi, pai; pi = pai = 3.14;

3. 变量的使用

取值和存值!

4. 变量的作用域

按照作用域不同可以分为局部变量和全局变量:

局部变量:也称为内部变量,定义在函数内部或者代码块内部,其作用范围从变量定义开始到函数结束或者代码块结束。在内部可以定义和外部同名的变量,在内部这些变量会屏蔽外部的同名变量。

全局变量:也称为外部变量,定义在函数外部,其作用范围是从定义开始,到文件结尾。(同一文件中,从该变量定义以后的任何位置都可以使用该变量。)

  1. 变量为什么要区分类型?

不同类型数据在内存中存储的空间大小和存储方式是不尽相同的,为了有效的使用内存空间和有效率的存取,变量也需分为不同的类型。

&nbsp

printf函数介绍

printf是一个标准输出函数,包含在标准输入输出头文件stdio中,能够以精确的格式输出结果。

printf函数的调用格式:  printf(“格式控制字符串”,输出项目列表);  例如:prinf(“name = %s, age = %d”, name, age);

格式控制字符串:

是由格式字符(转换说明符、标志、域宽、精度)和普通字符组成。

输出项列表:

可以是常量、变量或者表达式,也可以没有输出项(例如只输出一系列字符串),输出项必须与格式控制符在类型和数量上一致,否则结果不可预测。当有多个项目输出时,各输出项之间以逗号隔开。

printf的格式控制的完整格式:?

% - 0 m.n l或h 格式字符?

下面对组成格式说明的各项加以说明:?

1 %:表示格式说明的起始符号,不可缺少。

2 -:有-表示左对齐输出(右侧补空格),如省略表示右对齐输出(左侧补空格)。

3 0:有0表示指定空位填0,如省略表示指定空位不填。

4 m.n:m指域宽,即对应的输出项在输出设备上所占的字符数。N指精度。用于说明输出的实型 数的小数位数。对数值型的来说,未指定n时,隐含的精度为n=6位。

5 l或h:l对整型指long型,对实型指double型。h用于将整型的格式字符修正为short型。

格式字符

格式字符用以指定输出项的数据类型和输出格式。

1 d格式:用来输出十进制整数。有以下几种用法: %ld:输出长整型数据。

2 o格式:以无符号八进制形式输出整数。对长整型可以用"%lo"格式输出。同样也可以指定字段宽度用“%mo”格式输出。?

3 x 格式:以无符号十六进制形式输出整数。对长整型可以用”%lx”格式输出。同样可以指定字段宽度用”%mx”格式输出。

4 u 格式:以无符号十进制形式输出整数。对长整型可以用”%lu”格式输出。同样也可以指定字段宽度用”%mu”格式输出。

5 c 格式:输出一个字符;

6 s 格式:用来输出一个字符串

7 f 格式:用来输出实型数据。对double型可以用”%lf”格式输出。对单精度,前7位为有效数字,默认输出6位小数;对双精度前15位为有效数字,默认输出6位小数。

8 g 格式:自动选择f格式或者e格式中的较短的一种输出,且不输出无意义的0.

9 p 格式:输出内存地址

10 e 格式:以指数形式输出实数。

printf函数的补充:

  1. %*.*的作用:printf(“%*.*f”, 5, 3, a); *可以理解为占位符,例如这里就是把变量a按照域宽为5,小数点后保留3位小数输出。
  2. printf严格按照格式控制符输出,如果将一个整型变量,用%f格式输出,显示的结果并不是自己想要的(不可预期的)。

&nbsp

scanf函数介绍

scanf函数原型包含在标准输入输出头文件stdio.h中,用于接受键盘输入的内容。Scanf函数是一个阻塞式函数。

格式: sancf(“格式控制字符串”, 输入地址列表);  例如: sancf(“%s,%d”, &name, &age);

注意点:

  1. scanf(“%d %d”, &a, &d); 这里%d和%d之间用空格隔开,则在输入的时候两个数字之间需要用空格或者回车隔开,不可用其他字符
  2. scanf(“%d, %d”, &a, &b); 这里%d和%d之间使用逗号隔开,则在输入两个数字的时用逗号隔开。
  3. scanf(“%f”, &f1); 接受一个实数时不可以使用%m.nf;
  4. scanf(“%f\n”, &f1); 这里的\n并不是回车的转义字符,在输入数字后需要原样输入\n才能结束scanf函数。格式控制字符窜中除了格式控制符的其他字符要原样输出。
  5. scanf(“%3d”, &num); 这里表示只接收输入数字的前3位,例如:输入了12345, 那么 num = 123;
  6. scanf(“%d, %*d, %d”, &a, &d); 这里表示接收到输入的3个数,第一个数的值给a, 把第三个数的值给d,。%*d在这里的意思就是跳过接收的这个数字。

scanf函数的运行原理:

scanf函数被调用后会创建一个缓冲区,当用户在键盘上输入内容的时候,缓冲区会依次记下这些数据,并根据格式控制符,按照地址列表依次找到这些变量并传值;所以在混合接收不同类型数据时会有所影响。比如scanf(“%d%c%d”, &a, &ch, &b); 在键盘上输入“10 A 10”,则会把10给a,把’ ’(空格)给ch, 把’A’给b,但是b是整型变量,所以不接收这个值,所以 b 的值不变化。为了避免这种情况,在输入的时候,接收字符前不要输入空格,例如输入”10A 10”;或者使用逗号分隔符,例如scanf(“%d,%c,%d”, &a, &ch, &b),在输入的时候数据之间使用逗号隔开。建议使用逗号分隔符。

运算符

运算符

优先级与结合性

算数运算符

类型转换

表达式

赋值运算符

自增、自减

sizeof运算符

逗号运算符

关系运算符

逻辑运算符

三目运算符

时间: 2024-12-16 11:12:50

数据类型、常量、变量、printf、scanf和运算符的相关文章

数据类型(8种)和运算符——Java

一.什么是标识符,它有什么作用(重点掌握) 1. 标识符指的是 标识符是用户编程时使用的名字,用于给变量.常量.函数.语句块等命名,以建立起名称与使用之间的关系.标识符可由任何字母数字字符串形成. 2. 作用 声明常量.变量.方法.类和包等的名称 3. 命名规则 必须以字母._下划线.美元符$开头. 其它部分可以是字母.下划线“_”.美元符“$”和数字的任意组合 大小写敏感,长度无限制. 不可以是Java的关键字. 注意:不建议采用汉字来定义标识符 二. 什么是关键字,什么是保留字 Java关键

C 数据类型 常量 变量

一 数据类型 1. 什么是数据 生活中时时刻刻都在跟数据打交道 比如体重数据 血压数据 股价数据等 在我们使用计算机的过程中 会接触到各种各样的数据 有文档数据 图片数据 视频数据 还有聊QQ时产生的文字数据 用迅雷下载的文件数据等 2. 数据的分类 计算机中存储的数据可以分为两种: 静态数据和动态数据 1> 静态数据 a. 概念: 静态数据是指一些永久性的数据 一般存储在硬盘中 b. 存储的时长: 计算机关闭之后再开启 这些数据依旧还在 只要你不主动删掉或者硬盘没坏 这些数据永远都在 c. 哪

常量与转义符和运算符

一.常量 常量也有数据类型, 有常量值, 但是常量不能改变值, 不能再赋值.   赋值方式为: final int A=100;(正确) 错误赋值方式为: final int A=100;          A=101; 常量可赋值,也可不赋值,也可之后赋值(但是不推荐,容易忘记赋值). final int A;      A=100; 常量申请注意事项:   1.常量名称所有字母大写(书写规范,方便查看,如果小写不报错). final int AGE=100; 2.在很大数字(位数很多)的时候

C语言基础 第一课 ---------基本数据类型,常量,变量

int main() { //单行注释:注释一行 /* 多行注释:在这个区间内,都属于多行注释,可以换行. */ #pragma mark---基本数据类型---- /* char   字符类型    包含: ‘a~z’ ‘A~Z’ ‘0~9’等等 int    整型类型    包含: 数字1234567890 等等 float  浮点型      包含: 数字1.2 2.5等等 short  短整型      包含: 数字123456789等等 long   长整形      包含: 数字12

JS基础-变量及输入输出和运算符的使用

一.什么是JavaScript? 再讲JS的基础之前,先让我们了解一下什么是JS吧. JS,全称JavaScript.是t一种直译式脚本语言,是一种动态类型.弱类型.基于原型的语言,内置支持类型.它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HTML(标准通用标记语言下的一个应用)网页上使用,用来给HTML网页增加动态功能. 二.使用JS的三种方式 1.在HTML标签中直接内嵌JS():并不提倡使用. <button onclick="ale

02-js的变量强转和运算符

js中的变量强转: <html> <head> <title>js中的变量强转</title> <meta charset="UTF-8"/> <!-- js中的数据转换: 其他类型转换为number 类型 使用Number(其他类型的数据); string 类型的数字字符: 对应的number数字 string 非数字字符: NaN(number类型) boolean true: 1 boolean false: 0

Java 第二章 变量 、数据类型和运算符 笔记

Java 第二章 变量 .数据类型和运算符 一.变量:存储数据的一个基本单元. 二.变量的声明和赋值: 1)声明并赋值:数据类型 变量名=值;      例:int  price=1000; 2)声明.赋值分两步:数据类型 变量名;   例: int  price; 变量名=值;              price=1000; 三.数据类型2种: 1)基本数据类型8种: Byte 长度:-128~127(-2的7次方到2的7次方减1) Short   -2的15次方到2的15次方减1 Int

第二章 变量,数据类型和运算符

第二章 &变量,数据类型和运算符 英文新识: double 双精度浮点 string  字符串 character  字母 integer  整数 Scanner  扫描仪 score  分数         name  名字     boolean  布尔   true  真          false  假 语法新知: double score =98.5; //声明双精度浮点型变量score存储分数 String name="张大侠";        //声明字符串型变

一.变量,数据类型和运算符

1.变量:是一个数据存储空间的表示(变量是存储数据的一个基本单元,不同的变量相互独立)-                    变量与房间的对应关系               旅馆中的房间           变  量                 房间名称             变量名                                      房间类型             变量类型                 入住的客人           变量的值 2.java