C语言编程预备计算机专业知识

一、CPU、内存条、硬盘、显卡、主板、显示器之间的关系

CPU:Center Process Union,中央处理器,生产厂家主要有Intel和AMD

显卡:用于显示图像信息

主板:包含各个部件的传输信息的部件

各部件之间的关系:CPU、内存条、硬盘、显卡、声卡等部件连接在主板上,进行某项操作时(如播放视频),操作系统将硬盘中的数据调入内存,由内存解析数据将图像信息发送给显卡由显示器显示;将声音信息发送给声卡,由声音设备播放。

二、HelloWorld小程序的运行

打开Microsoft Visual C++,新建C++文件

编写代码

编译与链接文件:程序编译生成.exe可执行文件

执行程序:由Microsoft Visual C++通过操作系统调用CPU执行程序并输出结果

三、数据类型

基本数据类型

整数

整形-- int占4个字节

短整形-- short int占2个字节

长整形-- long int占8个字节

浮点数(实数)

单精度浮点数-- float占4个字节

双精度浮点数-- double占8个字节

字符

字符--char占1个字节

复合(扩展)数据类型

结构体

枚举

共用体

四、变量

变量的本质就是内存中的一段存储空间

五、CPU、内存条、VC++6.0、操作系统之间的关系

Microsoft Visual C++在运行一段程序时向计算机操作系统发出请求,计算机操作系统为程序中分配内存单元由CPU集中调度运行程序并输出运行结果。

六、变量的初始化

所谓的初始化就是赋值的意思

七、变量的定义(声明)

定义变量:

数据类型 变量名 = 要赋的值;

等价于

数据类型 变量名;

变量名 = 要赋的值;

实例:

int i = 3;等价于int i; i = 3;

int i, j;等价于int i; int j;

int i, j=3等价于int i; int j = 3;

int i = 3, j = 5;等价于int i; int j; i = 3; j = 5;

int i, j; i = j = 5;等价于int i, j; i=j=5;

八、进制的定义

什么叫进制

进制就是逢几进一

N进制实际就是逢N进一

我们计算机只识别二进制

人类最习惯使用的是十进制

为了实际需要,我们又建立了八进制和十六进制

C语言规定八进制前要加0(注意不是字母o),十六进制前要加0x或0X,十进制前什么都不加

进制:逢几进一

十进制:十个基数0~9,逢十进一习惯使用十进制

二进制:两个基数 0 1,逢二进一计算机只识别二进制

七进制:七个基数 0~6,逢七进一一周七天

八进制:八个基数0~8,逢八进一

十二进制:十二个基数 0~11,逢十二进一一年十二个月

十六进制:十六个基数0~9 A~F(a~f),逢十六进一

六十进制:六十个基数0~60,逢六十进一一小时六十分钟

不同数制数的标识:

在汇编语言中:在数字后加字母B表示二进制,加字母O表示八进制,加字母D表示十进制,加字母H表示十六进制。

实例:

1011B为二进制数1011,也记为(1011)2

1357O为八进制数1357,也记为(1357)8

2049D为十进制数2019,也记为(2049)10

3FB9H为十六进制数3FB9H,也记为(3FB9H)16

进制转换:

图2.1 常用计数制对照表

九、常量在C语言中的表示

整数

十进制:传统的写法

十六进制:前面加0x或0X

八进制:前面加0注意是数字零不是字母o

浮点数

传统写法

float i = 3.12;//传统写法

科学计数法

float i = 3.2e3;//x的值是3200

float i = 123.45e-2;//x的值是1.2345

字符

单个字符用单引号括起来

‘A’ 表示字符A

‘AB’ 错误“AB” 正确

字符串用双引号括起来

“A” 正确,因为”A”代表了’A’ ‘\0’的组合

十、常量在计算机中的二进制代码存储

整数是以补码的形式转化为二进制代码存储在计算机中

实数是以IEEE754标准转化为二进制代码存储在计算机中

字符的本质实际也是与整数的存储方式相同

十一、代码规范化

林锐《高质量C/C++编程》

代码的可读性强【更容易让自己和别人更清楚地看懂程序】

使程序更不容易出错【降低了代码的出错率】

十二、字节的概念

字节就是存储数据的单位,并且是硬件所能访问的最小单位

1字节 = 8位

1KB = 1024字节

1MB = 1024KB

1GB = 1024MB

十三、不同类型数据之间数据的转换

暂不考虑

十四、ASCII码

ASCII码的概念:

ASCII码不是一个值,而是一种规定,规定了不同的字符是使用哪个整数值去表示

实例:ASCII码规定了

‘A’-- 65

‘B’-- 66

‘a’-- 97

‘b’-- 98

‘0’-- 48

十五、字符的存储方式

字符的本质实际是与整数的存储方式相同

十六、基本的输入输出函数

printf()--将变量的内容输出到显示器上

四种用法:

printf(“字符串”);

printf(“输出控制符”,输出参数);

printf(“输出控制符1 输出控制符2 ......”,输出参数1,输出参数2, ……);输出控制符和输出参数要一一对应

printf(“输出控制符 非输出控制符”, 输出参数);输出控制符如下:

%d表示以十进制输出int或short int数值

%ld表示以十进制输出long int数值

%c表示输出char类型数据

%f表示输出float类型数据

%lf表示输出double类型数据

%x(或%X或%#x或%#X)表示以十六进制输出int、long int或short int类型数据

%o表示以八进制输出int、long int或short int类型数据

%s表示输出字符串类型数据

输出控制符的作用:

01组成的代码可以表示数据也可以表示指令

如果01组成的代码表示的是数据的话,那么同样的01代码组合以不同的格式输出就会有不同的输出结果

scanf()--通过键盘将数据输入到变量中

两种用法:

scanf(“输入控制符”,输入参数);将从键盘输入的字符转化为输入控制符所规定格式的数据,然后存入以输入参数的值为地址的变量中;其中scanf中的输入控制符与printf中的输出控制符相同

scanf(“非输入控制符 输入控制符”,输入参数);将从键盘输入的字符转化为输入控制符所规定格式的数据,然后存入以输入参数的值为地址的变量中;其中scanf中的输入控制符与printf中的输出控制符相同,非输入控制符原样输入

如何使用scanf编写出高质量的代码:

使用scanf之前最好使用printf提示用户以什么样的格式输入

scanf中尽量不要使用非输入控制符,尤其是不要使用”\n”

应该编写代码对用户的非法输入做适当的处理:

while ((ch=getchar()) != '\n')

continue;

运算符

算术运算符

+(加)-(减)*(乘)/(除)%(取余数)

关系运算符

>(大于)>=(大于等于)

逻辑运算符

!(非)&&(与或并且)||(或)

赋值运算符

=+=-=*=/=

优先级:

算术 > 关系 > 逻辑 > 赋值

补充:

除法(/)的运算结果和运算对象的数据类型有关,两个数都是int类型的数据,则商就是int类型的数据;若商有小数,则截去小数部分;被除数和除数中只要有一个或两个都是浮点型数据,则商也是浮点型数据,不截去小数部分。

取余(%)的运算对象必须是整数,结果是整除后的余数,其余数的符号与被除数相同。

!(非):非真即假,非假即真

&&(并且):同真则真,一假则假;左边的表达式为假,右边的表达式肯定不会执行

||(或):同假为假,一真则真;左边的表达式为真,右边的表达式肯定不会执行

C语言对真假的处理:是零则假,非零即真;真用1表示,假用0表示

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20181028G0BK8100?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券