- 什么是计算机程序?什么是编程语言?为什么需要编程语言?编程语言是用来干嘛的?举例一些编程语言,以及他们各自的特点?
(1) 是指一组指示计算机执行动作或做出判断的指令,通常用某种程序设计语言编写,运行于某种目标体系结构上。
(2) 是用来定义计算机程序的形式语言。它是一种被标准化的交流技巧,用来向计算机发出指令。
(3) 一种编程语言让程序员能够准确地定义计算机所需要使用的数据,并精确地定义在不同情况下所应当采取的行动。
(4) 人通过编程语言对计算机发出命令。
(5) C语言,特点:是一个有结构化程序设计、具有变量作用域以及递归功能的过程式语言。
C++,特点:支持数据封装和数据隐藏;支持继承和重用;支持多态性。
2.编辑好的程序到成为可以运行的可执行文件,要经历哪几个过程?
C源程序->编译预处理->编译->优化程序->汇编程序->链接程序->可执行文件
3.现阶段为什么要学习C语言,而不是其他的编程语言?C语言有什么特点?
(1)相比较其他的编程语言(像C++,JAVA),C语言是个低级语言。从总体上来说,低级的编程语言可以让你更好的了解计算机;
(2)设备驱动程序和操作系统只能用C语言来编写;
(3)C的程序比其他用别的语言写的程序,实现相同的功能,它用的代码行数更少,而它带来的运行效率却更快;
(4)如果你学习过C语言,你就能学习现在任何的高级编程语言。因为所有的高级语言都是以C语言为基础的;
特点:
C语言是一个有结构化程序设计、具有变量作用域以及递归功能的过程式语言。
C语言传递参数均是以值传递,另外也可以传递指针。
不同的变量类型可以用结构体组合在一起。
只有32个保留字,使变量、函数命名有更多弹性。
部份的变量类型可以转换,例如整型和字符型变量。
通过指针,C语言可以容易的对存储器进行低级控制。
预编译处理让C语言的编译更具有弹性。
4.什么是常量,什么是变量?都有哪些分类?
(1)不变化的量;
指针常量,文字常量,符号常量等。
(2)能储存计算结果或能表示值抽象;
C语言中,变量分为全局变量和局部变量;也可以这样分:自动变量、静态变量。前者是按变量作用范围来分的,而后者是按变量存储方式来分的。
按存储占用空间来分,可以是整型变量,字符型变量,浮点型变量等.当然还有数组,结构体变量等。
C语言还有一个重要变量:指针变量。
5. 标识符的命名规范是什么?
(1)标识符由字母、数字和下划线组成;
(2)标识符的第一位必须是字母或者下划线,不能是数字;
(3)区分大小写。
6.什么是数据类型?数据类型分为哪些种类?每种数据类型占多少个字节大小?每种数据类型的取值范围怎么计算?思考:对于数据类型为什么要分类?
(1)计算机中中,以位(0 或 1)表示数据;
(2)数字型,字节型,文本型,
(一)32位平台:
分为有符号型与无符号型。
有符号型:
short 在内存中占两个字节,范围为-2^15~(2^15-1)
int 在内存中占四个字节,范围为-2^31~(2^31-1)
long在内存中占四个字节,范围为-2^31~2^31-1
无符号型:最高位不表示符号位
unsigned short 在内存中占两个字节,范围为0~2^16-1
unsigned int 在内存中占四个字节,范围为0~2^32-1
unsigned long在内存中占四个字节,范围为0~2^32-1
实型变量:
分单精度 float 和双精度 double 两种形式:
float:占四个字节,提供7~8位有效数字。
double: 占八个字节,提供15~16位有效数字。
(二)16位平台:
1)整型(基本型):类型说明符为int,在内存中占2个字节。
2)短整型:类型说明符为short int或short。所占字节和取值范围均与整型(基本型)相同。
3)长整型:类型说明符为long int或long,在内存中占4个字节。
无符号型:类型说明符为unsigned。
无符号型又可与上述三种类型匹配而构成:
各种无符号类型量所占的内存空间字节数与相应的有符号类型量相同。但由于省去了符号位,故不能表示负数。
实型变量:
分为单精度(float型)、双精度(double型)和长双精度(long double型)三类。
单精度型占4个字节(32位)内存空间,其数值范围为3.4E-38~3.4E+38,只能提供七位有效数字。
双精度型占8 个字节(64位)内存空间,其数值范围为1.7E-308~1.7E+308,可提供16位有效数字。
长双精度型16 个字节(128位)内存空间,可提供18-19位有效数字。
(3)数据类型的出现是为了把数据分成所需内存大小不同的数据,编程的时候需要用大数据的时候才需要申请大内存,就可以充分利用内存。
- 字节大小是什么意思?怎么计算数据类型或者变量的字节大小?
1)是计算机信息技术用于计量存储容量的一种计量单位,也表示一些计算机编程语言中的数据类型和语言字符。
类型 字节
char 1
short int 2
int 2(16bit)/4(32bit)/4(64bit)
long 4(16bit)/4(32bit)/8(64bit)
指针变量 4
float 4
double 8
long long 8
long double 10
各种数据类型所占字节长度,主要是int型,long型和指针数据类型的差异。
int型数据,如果是16bit平台,则是2个字节,如果是32bit的,则占4个字节,64bit仍然是4字节。
long型数据,如果是16bit平台,则是4个字节,如果是32bit的,则占4个字节,64bit仍然是8字节。
指针型数据,比较特殊,大多是4个字节,只有在16bit平台,并且指针式段内寻址时才是2个字节。
7.什么是原码?什么是补码?什么是反码?正数的原码补码反码怎么表示,负数的原码补码反码怎么表示?
(1)是一种计算机中对数字的二进制定点表示方法;
(2)计算机中符号数的一种表示方法;
(3)反码是数值存储的一种,多应用于系统环境设置;
(4)正数的原码,反码和补码与其本身相同;负数的原码符号位为1,其余不变;
负数的补码是:符号位为1,其余各位求反,末位加1;
反码是:符号位为1,其余各位求反,但末位不加1;
8.运算符有哪几种?每种运算符进行什么运算?
1.算术运算符:* - + / %
2.关系运算符: > < == != >= <=
3.逻辑运算符:! && ||
4.位运算符:<< >> ~ | ^ &
5.赋值运算符:=及扩展赋值运算符
6.条件运算符:?:
7.逗号运算符:,
8.指针运算符:*和&
9.求字节数运算符:sizeof
10.强制类型转换运算符:(类型)
11.分量运算符:. ->
12.下标运算符:[ ]
13.其他:如函数调用运算符:()
9.C语言中有哪些控制语句,每种控制语句有什么功能?
①if( )~else 条件语句
②for( )~ 循环语句
③while( )~ 循环语句
④do~while( ) 循环语句
⑤continue 结束本次循环语句
⑥break 中止执行switch或循环语句
⑦switch 多分支选择语句
⑧goto 转向语句
⑨return 从函数返回语句
10.搞清楚if...else,for循环,while循环,switch...case怎么执行的?
(1)if...else语句
格式:
if(){
代码
}
小括号里一定是布尔值,为真就执行大括号里的代码,为假就不执行
if(){
代码1
}else{
代码2
}
if小括号为真,执行if大括号的代码
if小括号为假,执行else后面的代码
if...else嵌套使用
例子:
var score = 59;
if(score >= 90){// 分数大于90,优秀
}else {
//小于90
if (score >= 80 && score <90){
;
}else{
//小于80
if(score >=60 && score <80){
;
}else{
//小于60
;
}
}
}
(2)if...else if... else
else if 语句要结合if语句 使用,不能单独使用
if(条件1){
代码1
}else if(条件2){
代码2
}else if(条件3){
代码3
}
...
else{
代码n
}
执行过程
如果if中的条件1为真, 就执行代码1
如果if中的条件1为假, 就往下执行,判断else if中的条件2, 如果条件2为真,就执行代码2
以此类推,如果所有条件都不满足, 最后就执行else中的代码n
注意: 如果有一个条件为真, 就执行对应大括号中的代码, 后面不在执行
注意:else 根据情况,是可以省略
例子:
var score = 59;
if(score >= 90){//分数大于90
}else if(score >=80){// 大于80 小于90
}else if(score >=60){ //大于60 小于80
}else if(score >0){ //小于60
;
}
二、switch语句:
格式 :switch(值){
case 值1:
代码1;
break;
case 值2:
代码2;
break;
...
fefault:
代码n;
}
11.break和continue有什么区别?
break是结束整个循环,而continue是结束本次循环(跳过下一步)