por zhang di hace 8 años
831
复合语句:用大括号将若干语句包裹在内形成的语句
循环语句
while(i<100){ sum = sum + i; i=i+1; }
分支语句
if(a>b) x=a; else x=b;
最简单的语句:表达式+分号
i=i+1;
i=i+1
其中分号;特别重要,C语言中要求每一句完整的语句都必须以分号做结尾,不给出分号直接换行会编译错误
三目运算符
? :
二目运算符
>, <, ==, ||, &&, +, -, *, /, =
一目运算符
!
循环结构
while:while循环结构,while(1) 2;的执行顺序是1->2->1...循环,1为循环条件 以上循环语句,当循环条件表达式为真则继续循环,为假则跳出循环。典型的当型循环结构
do:do循环结构,do 1 while(2);的执行顺序是1->2->1...循环,2为循环条件,典型的直到型循环结构
for:for循环结构
分支结构
default:开关语句中的“其他”分治,可选。
case:开关语句中的分支标记
switch:开关语句(多重分支语句)
else:条件语句否定分支(与if连用)
if:条件语句
跳转结构
goto:无条件跳转语句
break:跳出当前循环或switch结构
continue:结束当前循环,开始下一轮循环
return:用在函数体中,返回特定值(或者是void值,即不返回值)
存储级别说明
volatile:与const合称“cv特性”,指定变量的值有可能会被系统或其他进程/线程改变,强制编译器每次从内存中取得该变量的值
const:与volatile合称“cv特性”,指定变量不可被当前线程/进程改变
extern:指定对应变量为外部变量,即在另外的目标文件中定义
register:指定为寄存器变量,建议编译器将变量存储到寄存器中使用,也可以修饰函数形参,建议编译器通过寄存器而不是堆栈传递参数
static:指定为静态变量
auto:指定为自动变量,由编译器自动分配及释放。通常在栈上分配
复杂数据类型
sizeof:得到特定类型或特定类型变量的大小
typedef:声明类型别名
enum:枚举声明
union:共用体声明
struct:结构体声明
修饰类型
unsigned:修饰整型数据
signed:修饰整型数据
long:修饰int,长整形数据
short:修饰int,短整型数据,可省略
基本数据类型:
double:双精度浮点型数据,属于浮点数据的一种
float:单精度浮点型数据,属于浮点数据的一种
int:整型数据,通常为编译器指定的机器字长
char:字符型类型数据,属于整型数据的一种
void:声明函数无返回值或无参数
代码规范
对于不懂的地方,可以加注释或者空行标识
注释可用// 或/**/
同一个控制结构范围内的语句要缩进
一个缩进单位=4个空格, 可以用tab实现
多个英文单词可以用下划线链接
my_first_program
my first program
变量名、函数名应该用有意义的英文
string
afdsed
变量都有类型,不同类型的数据结构不同
例如此程序输入13,期结果超出了int型的取值范围,会输出一个错误结果
int占32位的时候,最大可以赋值为:2147483647。也就是0x7fffffff
(不是2的32次方,因为最高位是符号位,因此最大值是2的31次方减一)
程序对数据处理过程的控制结构有四种,顺序,判断,当型循环,直到型循环
程序最基本的功能是对数据进行处理,如例中的n, i, fact
函数是一种子程序,针对特定的功能进行设计,可以化繁为简
每个C语言程序有且只有一个main函数,它是程序的入口点
C语言由函数组成,如例子中有factorial, main, scanf, printf
各类应用程序