您的位置:首页 > 编程语言 > C语言/C++

C语言第一节-进制,运算符,输入输出

2015-09-22 15:53 573 查看
1.进制

进位机制(逢几进1)
作用:用有限的数字字符去表现数值
一.进制的规则


1.N进制使用规则0~N-1之间的数字表示所有的数值



(1)二进制
0 1

(2)八进制
0~7

(3)十进制
0~9

(4)十六进制
0~9 A~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进制

口诀:连除(除N,商为0结束)
倒取余

(2)N进制

十进制

口诀:按位
求和



5.区分进制



(1)十进制
没有修饰

(2)八进制
以0开头 063

(3)十六进制
以0X或0x开头
0x63



6.进制常识



(1)十进制:给开发人员用的
二进制:计算机能够识别的语言

(2)十六进制的存在为了方便表示二进制(一个16进制位
= 4个二进制位)

C语言常识

#include
<stdio.h>

#include作用:导入文件内容

stido
:standard input output
标准输入输出
#include <stdlib>—library---包含随机函数
< >包含系统自带头文件
#include “ "包含一个用户定义的文件,可以是头文件,也可以是普通文件
搜索顺序:当前目录→编译器include目录→系统目录→报错
//#include “a.txt"
//把当前目录a.txt的内容替换到当前写include位置
//当前目录:和main.c同一个目录
//子集目录:”text/a.txt“,text和main.c一个目录

//如果修改了编译器的include的自定义文件,运行无变化,方法:
1、 清空缓存 product→clear
2、手动清理缓存 删除DerivedData文件下得内容 ,command+A全选删除

C语言模块化编程(多文件开发)
我们把功能相似的函数封装到不同的文件中(一个.c对应一个.h文件,且文件名相同)
实现:
.c c语言源程序
.h (header)头文件:
1、方法的声明 但是不能实现方法
2、声明变量
3、声明结构体
好处:1、用的时候,只需要包含.h文件,对外隐藏源文件的实现
2、团队的分工和协作
3、可以吧功能细化分若干模块



注释:单行注释(command+/)、多行注释

/*



程序运行时,注释不被执行


*/
2.基本数据类型



#pragma mark 标记:类似目录(可快速查找位置)

一、基本数据类型

整型、浮点型、字符型



二、整型

1、有符号
short 2

int 4

long 4或8(根据当前环境)
2、无符号
unsigned short
unsigned int
unsigned long


三、浮点型

float 4、double 8



四、字符型

char 1



五、数据的存储单位

1、存储单位。

字节byte,最常用的存储单位。

位bits,最小的存储单位

2、1字节
= 8位(二进制位)
= 2位(十六进制位)
3、计算类型的字节数,sizeof()
printf("%lu\n", sizeof(char));

%lu :无符号长整型unsigned long

3.常量变量运算符

常量:程序运行期间不可被修改的量


整型常量
12

浮点型常量
1.3

字符型常量
'a' 'A'

字符串常量
"zachary"

变量(使用之前必须被定义):代表一个存储区域(容器),内容即为变量的值,可被改变

组成:类型修饰符
变量名
= 初始值

变量命名规则:只能以字母,数字,下划线组成,并且数字不能开头(不能与系统保留字相同,不能使用重复的变量名,见名知意,驼峰命名法)

//变量名使用驼峰命名法

//老师的年龄

int
teacherAge = 18;



//学生的年龄

int
studentAge = 8;



//练习:交换两个变量的值

int
a = 10;

int
b = 20;


//定义临时存储数据的变量(中间变量)

int
temp = a;

a = b;
b = temp;

运算符
赋值运算符:变量
=
常量/变量
声明变量:
int num;

//除法运算符 /

//被除数/除数
除数不能为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变量的中值先自增,后参与运算


/*
e4 = 20 + 20; 40
e3 = e3 + 1;
*/

int
e3 = 20;

int
e4 = 20+e3++;

/复合运算符

//加等 +=

int
f1 = 10;

int
f2 = 20;

f2 += f1; //f2 = f2+f1;

f2 -= f1; //f2 = f2 - f1;

f1 *= f2; //f1 = f1 * f2;
f2 /=
2;
//f2 = f2 / 2;

//表达式:常量、变量和运算符的组合

//表达式都是有结果的

/*



12

a+1

b

*/

int
g1 = 10;

int
g2 = g1 + 10;


语句
以;结尾

/*

a + b 表达式

a + b; 语句
*/
4.基本输入、输出函数

格式化输出函数printf
char(%c),int(%d),short(%sd),long(%ld),float(%f),double(%f)

功能1:输出简单的字符串
// printf("hello world!\n");

// printf("My name is Chen Zichao(陈自超)!\n");

// printf("BJS150833\n");


功能2:输出常量值

//将整型数值10,显示在控制台

// printf("输出的整型数为:%d\n", 10);



//输出一本书的价格55.5(%f默认保留小数点后6位)

// printf("这本书的价格:%f\n", 55.5);


功能3:输出变量或表达式的值

int
number = 1;

char
gender = 'f';

float
score = 98.5;

//

// printf("学生的学号:%d\n", number);

// printf("学生的性别:%c,学生的分数:%f",
gender, score);



// printf("%d", number+1);

格式化控制:
// printf("%04d", 12); //保留4位,前面不足补0
// printf("%.1f", 9.58); //.后面保留一位,满足四舍五入
// printf("%4.1f", 12.4567); // .前面的指定位数,后面保留几位

printf("%-4d",
112);
//左对齐

换行符:\n
%%:输出%
输入函数scanf
char(%c),int(%d),short(%sd),long(%ld),float(%f),double(%lf)


//从控制台输入数据,存储在某个变量中



//输入年龄

// int age = 0;



// printf("请输入年龄:");

//scanf双引号“”内,写什么内容,在控制台必须原样输入

// scanf("%d", &age); //&取地址符
回车结束输入

// printf("age = %d\n", age);

//

//breakpoint
断点



//从控制台输入学生的学号和年龄

// int number = 0;

// int age = 0;

//

// printf("请输入学生的学号和年龄:");

// scanf("%d %d", &number, &age);

// printf("number = %d,age= %d\n", number, age);



//输入多个数的时候,使用空格隔开

//在控制台输入时,整数之间可以使用多个空格间隔

//空白字符(空格,Tab,回车符)



//输入字符%c

char
gender = 0;

printf("请输入性别:");

scanf("%c", &gender);

printf("gender = %c\n", gender);



//scanf中不能出现\n,""中的\n会抵消回车符的操作
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: