进制
一、进制的规则:
1、N进制使用0 ~N-1之间的数字表示所有的数值
(1)二进制 0 1
(2)八进制 0~7
(3)十进制 0~9
(4)十六进制 0~9A~F(10~15)
2、N进制的数值每一位在计算时都是逢 N 进一
(1)在十进制下,计算9+1,数值是10,表现:10
(2)在二进制下,计算1+1,数值是2,表示:10
二、进制转换
1、基数:N进制的基数为N
2、位:对数值的每一位的描述。从右向左,最低位使用0表示,向最高位以此递增。
3、权:N进制的权是N,例如:十进制的权是10.
4、位权:数值的每一个位置对应的单位值。 N^(i-1)
(1)十进制转N进制:连除(连除除至商为0) 倒取余
(2)N进制转十进制:按位求和
5、区分进制
(1)十进制 没有修饰;二进制 没有修饰
(2)八进制 以0开头 063
(3)十六进制 以0X开头 0X63
三、进制常识
1、十进制:给开发人员用的 二进制:计算机能够识别的语言
2、十六进制:为了方便表示二进制
一个16进制位=4个2进制位1=0001 ~ F=1111
程序
程序说明
#include作用:导入文件内容
stdio = standard input output 标准输入输出
注释:单行注释 多行注释
/*
程序运行时,注释不被运行
*/
一、基本数据类型
整型、浮点型、字符型
二、整型
1、有符号 short、int、long、longlong
2、无符号unsigned short、unsigned int、unsigned long
三、浮点型
float、double
四、字符型
char
五、数据的存储单位
1、存储单位:字节Byte,是最长用的存储单位。
位Bits,最小的存储单位。
2、1字节 = 8位(二进制)= 2位(十六进制)
常量 变量 运算符
一、常量
程序运行期间值不能被改变的量
整型常量:12
浮点型常量:1.2
字符型常量:'a'‘A’
字符串常量:“yang”
二、变量
代表一个存储区域
定义变量:读取和存储数据
类型修饰符 变量名 = 初始值;
例:
存储一个人的年龄
int age = 18;
存储一个人的分数
float score =90.0;
存储一个人的性别 f女 m 男
char gender ='m';
从age中读取数据,拷贝一份储存在age2中
int age2 = age;
修改age中的数据
age = 20;
变量名使用驼峰命名法
老师的年龄
int teacherAge= 25;
学生的年龄
int stedentAge = 18;
赋值运算符
变量 = 变量/常量
算术运算符(+、-、*、/、%、++、--、)
+ 加号运算符
int a1 = 10;
int a2 = a1 +10;
* 乘法运算符
int b1 = 20;
int b2 = b1 *2;
/ 除法运算符
被除数/除数 除数不能为0
如果除号两边都是整数,结果也是整数,省略小数部分,不存在四舍五入
int c1 = 5 /2; //结果是2
如果除号两边有至少一个浮点数,结果就是浮点数
float c2 = 5 /2.0; // 结果是2.5
% 取余运算符/取模运算符
运算符两边必须都是整数,余数肯定是小于除数
int d1 = 5 % 3;//值为2
++ 自增运算符,变量中的值加1
int e1 = 10;
e1++; // e1 = e1 + 1;
a++和++a有不同的含义
a++变量中的值先参与运算,后自增
++a变量中的值先自增,后参与运算
int e2 = 10;
e2++; // e2 = e2 + 1;
int e3 = 20;
int e4 = (e3++)+ 20;
int e4 = (++e3)+ 20;
int e5 = 30;
int e6 = (--e5) +10;
int e6 = (e5--) +10;
复合运算符(+=、-=、*=、/=、%=)
int f1 = 10;
int f2 = 20;
f2 += f1; // f2= f2 + f1;
f2 -= f1; // f2= f2 - f1;
f2 *= f1; // f2= f2 * f1;
f2 /= f1; // f2= f2 / f1;
f2 %= f1; // f2 = f2% f1;
表达式:
定义:常量、变量与运算符的组合,表达式都会有返回值。
语句;是程序执行的最小单位,以分号结尾。
输出函数
功能1:输出简单的字符串
printf("Hello, World ! \n");
printf("I miss you ! \n");
功能2:输出常量值
printf("%d", 10);
printf("The price of book is $ %.2f",95.5);
功能3:输出变量或表达式的值
int number = 1;
char gender = 'm';
float score = 99.5;
printf("Student %d is %c get %.2f\n",number,gender,score);
printf("学生的性别: %c\n", gender);
printf("学生的分数: %.2f\n", score);
printf("%d", number + 1);
转换格式控制:
printf("%04d\n", 12); //值0012, 占4位,不足位O补足
printf("%.1f\n", 9.58); //值9.6 保留一位小数,结果并且进行了四舍五入
printf("%4.2f\n",12.345678);//值 12.35 保留两位小数
printf("%-4d",112); //左对齐
功能4:输出转义字符 \n回车,\\打印\,%%打印%
printf("\\C语言通过率100%%\n");
输入函数
从控制台输入数据,存储在某个变量中
输入年龄
int age = 0;
int a = 0;
双引号内“ ”,写什么内容,在控制台就原样输入什么
scanf("%d %d", &age,&a); // &取地址符 点击回车,结束程序输入
printf("age = %d\n", age + a);
从控制台输入学生的学号和年龄
int num = 0;
int age = 0;
printf("请输入学号和年龄:\n");
输入多个整型数据时,转换符之间使用空格间隔
在控制台输入时,整数之间可以使用多个空格间隔
空白字符(空格、tab、回车符)
scanf中不能出现\n,“ ”中的\N会抵消回车符的操作(结束操作)
scanf("%d %d", &num, &age);
printf("num = %d ,age = %d", num, age);
输入float类型数值时,使用%f
输入double类型数值时,使用%lf
输入字符%C
char gender =0;
printf("请输入性别:");
scanf("%c", &gender);
printf("gender = %c", gender);