常量,变量,输出,输入
常量的本质
1.什么是常量 (常数,不能改变的量)
1)常量程序中最基本的元素
2)如同其名称所暗示的,在程序执行期间该值不能改变
2常量.属于指令的一部分,编译后不再更改
================================
常量类型
1.整形常量
2.实型常量
3.字符常量
4.字符串常量
================================
整型常量 (整数)
1.按进制分类
1)十进制
例:10,35,-128
2)八进制
以0开头。例:010==8
3)十六进制
以0x或者0X开头。例:0x10
2.按数据长度分类
1)整型常量 32bit== 4Byte (2^32-1)
2)长整型常量 64bit ==8Byte (2^64-1)
1>为什么有长整型常量
因为每种类型的常量都有一定的表示范围
2>长整型常量后加字母L
12
12L
================================
实型常量 (浮点型常量) 小数
1.普通形式
例:3.14159 2
2.科学记数法
例:
314.591 = 3.14591*10^2 = 3.14591e2
215.789 = 2.15789e2
注意:字母e(或E)之前必须有数字,且e后面的指数必须为整数:
e2
10e0.1
================================
字符常量
1.什么是字符常量?
用单引号 ‘ ’ 把一个字符括起来,称为字符常量
‘A’~’Z’ : 65 ~90
‘a’~’z’ : 97~122
‘0’~’9‘ : 48 ~57
存储:
把’A’存储到计算机:
找到ASCII码表 ‘A’:65
计算机存储 65
读取:
计算机65
找到ASCII码表 65对应是字符’A’
‘A’显示出来
普通字符用单引号括起来,在c语言中,字符数据使用数字来表示,ASCII码表提出
2.什么是ascii码
因为计算机内部只能存储二进制数字而不能直接存储字符等其他数据,为了表示字符,
必须给所有的字符分配一个数字,这就是ascii码
‘A’-65==0
65-65==0
================================
三、变量 的本质
1.什么是变量
程序运行时可以改变的量
2.变量能解决什么问题
保存程序或者用户产生的数据,可以看作是数据的载体
处理大量数据,变量存储数据
3.变量的本质
1)其实变量就是内存某个存储位置的别名
================================
四、变量的类型(数据类型)
1.数据类型的作用
1)存储数据必须先确定数据的(存储数据类型和存储长度)
整数 小数
2.基本数据类型
1)整型
char 字符型 1Byte 8bit 0000 0000~1111 1111 2^8=256状态 0~255
short 短整型 2Byte 16bit 2^16=65536 状态 0~65535
int 整形 4Byte 32bit 2^32状态
long 长整形 8Byte 64bit 2^64种状态
2)浮点型
float 单精度浮点类型 4Byte
6~7
double 双精度浮点类型 8Byte
15~16
================================
五、变量的定义(标识符)
1.变量定义语法
作用:告诉系统怎么存储和存储的长度
1) 数据类型变量名
2.变量名(标识符)要求
1)由字母、下划线、数字组成 a,_,1
2)只能以字母、下划线开头 a1, a_1,_a ,(1a ,1_a 错误)
3)不能和c语言关键字重名
auto break case char const continue
default do double else enum extern... 等
4)变量严格区分大小写
int A,int a;
两个变量;
5)变量名必须唯一,在同一个大括号里面我们不能声明两个相同的变量
{
int b;
float b;(错误)
}
6)尽可能可读性较强
int number;
3.变量使用原则
1)必须先定义 ,再使用
数据类型 变量名
4.int,float,char 类型变量
1)声明语法,一行声明一个变量
2)多个变量一行、多行声明
#include
int main(void)
{
int a1;
int a2;
int a3;
float b1,b2,b3;
char c1;
char c2;
char c3;
return 0;
}
5.赋值和初始化操作
1)初始化方式 初始值;
#include
int main(void)
{
int a=100;//初始化
int b=100,c=200;
a=200;//赋值
return 0;
}
2)初始化后如何修改一个变量的值
变量可以改变,本质是存储空间
int a=100;
a=200; //修改变量a的数值
3)特殊的整型char 存储字符常量;
#include
int main(void)
{
char a='A';
return 0;
}
1>思考:字符的本质
a存储ASCII 65 字符类型与整形相通
2>即可以通过字符初始化,也可以使用整数进行初始化
‘A’-65==0
char a=65;
===============================================
6.变量的输入和输出
1.c语言输出函数printf
1>作用:将" "程序里面数据输出到终端
printf(“hello ios”);
printf(“how are you”);
2>使用方式:通过格式化符控制要输出的内容
int a=100;
printf(“格式化符列表”,变量名列表);
2.格式化输入和输出
1>c语言通过一定的格式接收或者输出数据
2>格式化符
整型: %d int
字符型: %c char
浮点: %f %.2f float
#include
int main(void)
{
int a=100;
printf("%d",a);
return 0;
}
常用的格式符:
%ld 长整型
%s 字符串
%x 十六进制
%o 八进制
%e 指数形式输出
定义一个字符型 ch,初始化0x40, 字符输出显示@,
再赋值为100,字符输出显示d。
#include
int main(void)
{
char ch=0x40;
printf("%c\n",ch);//@
ch=100;
printf("%c\n",ch);//d
return 0;
}
printf函数:
通过不同的输出方式体现"不看怎么存,就看怎么读"的概念
通过对一个整型变量的不同格式输出来体现
#include
int main(void)
{
int a=65;
printf("%d\n",a);
printf("%c\n",a);
printf("%#x\n",a);
printf("%#o\n",a);
return 0;
}
=======================================
4.c语言输入函数scanf
1>作用:为从终端接收用户的输入
2>使用方式:使用格式化符控制用户要输入的内容
3>注意:用户输入的内容必须严格按照格式
scanf(“格式化符列表”,变量名地址列表);
#include
int main(void)
{
int a=100;
scanf("%d",&a);
printf("%d\n",a);
return 0;
}
&取地址符号2、
char ch1 = 65;
char ch2 = 'a';
通过scanf改变这两个变量的值;
#include
int main(void)
{
char ch1=65;
char ch2='a';
scanf("%c",&ch1);
getchar();
scanf("%c",&ch2);
printf("ch1=%c,ch2=%c\n",ch1,ch2);
return 0;
}
7.特定问题解决
1)如何将两个变量的值进行交换
交换前:
int a = 100;
int b = 180;
交换后:
a = 180;
b = 100;
方法一:用中间变量temp
#include
int main(void)
{
int a=100;
int b=180;
int temp;
temp=a;
a=b;
b=temp;
printf("a=%d,b=%d\n",a,b);
return 0;
}
方法二:
#include
int main(void)
{
int a=100;
int b=180;
a=a+b;
b=a-b;
a=a-b;
printf("a=%d,b=%d\n",a,b);
return 0;
}