C程序设计期末复习:知识点总结
1. 算法及流程图表示
(1)程序流程图 : 可以表示结构化算法和非结构化算法,用箭头表示执行顺序
(2)N-S图 : 只能表示结构化算法,用上下关系表示执行顺序
(3)基本算法
● 交换两个变量的值
● 最大公约数的欧几里德算法
● 判断是否是素数
● 从多个数中最大最小值
● 冒泡排序法(数组)
● 直接选择排序法(数组)
● 折半查(数组)
2. 程序代码之——预处理部分
(1)预处理的作用 : 编译之前根据预处理命令对源代码进行修改
(2)文件包含 : 为代码中的函数提供声明
● #include <stdio.h>
scanf( ) : 格式化输入
printf( ) 大一期末c语言必考知识点: 格式化输出
gets( ) : 输入一行字符串
puts( ) : 输出一行字符串
● #inlcude <math.h>
sin( ) : 求正弦值
cos( ) : 求余弦值
● #include <stdlib.h>
malloc( ) : 分配指定字节的内存空间,返回该空间的起始地址
free( ) : 释放所分配的内存空间
● #include <string.h>
strlen( ) : 求字符串的长度(实现机制)
strcpy( ) : 字符串拷贝(实现机制)
strcat( ) : 字符串连接(实现机制)
(3)宏定义 : 掌握如何定义符号常量
● #define PI 3.14
3. 程序代码之——注释部分
(1)注释的作用 : 只供人阅读,编译器跳过这些字符不予处理
(2) /* */ : 块注释,可跨多行
(3) // : 行注释,从//开始至本行结束的字符为注释内容
4. 程序代码之——常量的表示
(1)整数表示 :
● 8进制整数的表示 : 以0开头表示8进制整数
● 16进制整数的表示 : 以0x开头表示16进制整数
● 8进制数的常见错误 : 01238, 048 (只能用0~7共8个数码)
(2)浮点数表示 :
● 小数表示形式 : 必须有小数点,如3.14
● 指数表示形式 : <小数或整数形式>E<整数形式>,如10E10
(3)字符 : 以''限定的一个字符
● 'a' : 小写字母a,其值为97
● 'A' : 大写字母A,其值为65
● '0' : 数字0,其值为48
● '\n' : 转义字符换行,其值为10
● '\0' : 字符串结束符,其值为0
(4)字符串 : 以""限定的一个字符序列,含有字符串结束符'\0'
5. 程序代码之——标识符
(1)标识符的功能 : 用来为变量、数组、函数命名
(2)标识符的命名规则 : 以_或字母开头,由_、字母和数字组成,不能用关键字
(3)C语言大小写字母敏感 : IF、if、If、iF不相同
6. 程序代码之——变量及其数据类型
(1)字符型变量的关键字
signed(有符号) unsiged(无符号) char(1字节)
(2)整型变量的关键字
signed(有符号) unsiged(无符号)
short(2字节) int(4字节) long(4字节)
char ch=0xFF;
short s=0xFFFF;
int i=0xFFFFFFFF;
long l=0xFFFFFFFF;
(3)实型变量的关键字
float(4字节) double(8字节)
(4)字符变量的输入和输出
char ch;
scanf("%c",&ch);
printf("%c",ch);//以字符形式输出
printf("%d",ch);//以整数形式输出
(5)整型变量的输入和输出
int i;
scanf("%d",&i);
printf("%d",i);
(6)实型变量的输入和输出
float a;
double b;
scanf("%f%lf",&a,&b);
printf("%f%f",a,b);
7. 程序代码之——运算符和表达式
(1)运算符及优先级
● (15) () 、[]
● (14) ~(位运算) 、! 、++ 、-- 、 & 、 * 、 sizeof (右)
● (13) * 、/ 、%
● (12) + 、-
● (11) <<(位运算) 、 >>(位运算)
● (10) > < >= <=
● (9) == !=
● (8) &(位运算)
● (7) ^(位运算)
● (6) |(位运算)
● (5) &&
● (4) ||
● (3) ? : (右)
● (2) = 、*= 、/= 、+= 、-= (右)
● (1) ,
(2)重点表达式解释
● i++与++i: 先用i的值,i再增1;i先增1,再用i的值
● a=1,2与a=(1,2): 注意逗号运算符的级别最低,括号可改变优先级
● a/b与a%b : 除运算和取余运算,%要求两侧都是整数
● a&b与a&&b : 按位与和逻辑与
● a|b与a||b : 按或与和逻辑或
● a>b?a:b : 条件运算,条件表达式成立,其值为a,否则为b
● ~a与!a :按位非运算和逻辑非运算
8. 程序代码之——语句
(1)语句规则 : 将多条语句书写于一行及将一条语句书写于多行无需特殊处理
(2)if语句:
if (expression1) statement1 ;
else if (expression2) statement2 ;
else if (expression3) statement3 ;
……
else if (expressionm) statementm ;
else statementn ;
(3)switch语句:
switch(expr){
case const_expr1: statements1;[break]
case const_expr2: statements2;[break]
……
case const_exprn: statementsn;[break]
default : statmentsn+1 ;
}
(4)else 悬挂 : else将和距离最近的、尚未匹配的if语句匹配
if (y != 0)
if (x != 0)
result = x / y;
else
printf("Error: y is equal to 0\n");
(5)switch瀑布 :
switch(n){
case 1: printf("Monday");
case 2: printf("Tuesday");
case 3: printf("Wednesday");
case 4: printf("Thursday");
break;
case 5: printf("Friday");
case 6: printf("Saturday");
case 7: printf("Sunday");
default:printf("Invalid number!");
}
上述代码中,若n的值为1,将输出:
Monday Tuesday Wednesday Thursday
(6)while语句 : 当型循环,循环体的执行次数可能为0
while(control_expr){
loop_statements;
}
(7)do语句 : 直到型循环,循环体的执行次数至少为1
do{
loop_statements;
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论