1、C 语言概述:1、为什么学习 C 语言1). C 的起源和发展2).C 的特点优点代码量小 速度快 功能强大缺点危险性高开发周期长可移植性不强3).c 的应用领域主要是系统领域4).c 的重要性2、怎样学习 C 语言3、学习的目标了解程序语言及发展历史熟练掌握 c 语言的语法规则掌握简单的算法理解面向过程的思想,这非常有助于将来对面向对象思想的学习能看懂程序会调试程序掌握将大问题转化为一系列小问题来求解的思想为学习 c+、数据结构、c#、java 打下良好的基础4、常见的学习问题1、学习 java 为什么建议先学习 C 语言2、没学过计算机专业的课程能够学懂 C 语言3、英语和数学不好能学好 。
2、C 吗32 个关键词:(有系统定义,不能重做其他定义)auto break case char const continue default do double else enum extern float for goto if int long register returnshort signed sizeof static structswitch typedef unsigned unsigned union void volatile while 5、课程规划c 语言简介 第一讲、基本编程知识 第二讲、数据类型第三讲、运算符和表达式第四讲、流程控制(所有语言都一样的)第五讲、函数(。
3、体现出面向过程和面向对象的区别)第六讲、数组第七讲、指针(c 语言的灵魂)第八讲、变量的作用域和存储方式第九讲、扩展数据类型第十讲、专题:字符串的处理进制转换补码动态内存分配(java、数据结构必学)综合应用:链表的使用6、举例子:一元二次方程# include # include int main (void)/把三个系数保存到计算机中int a=1; /=不表示相等,表示赋值int b=2;int c=3;double delta; /delta 存放的是 b*b-4*a*cdouble x1; /存放一元二次方程的其中一个解double x2; /存放一元二次方程的其中一个解delta=。
4、 b*b - 4*a*c;if(delta0)x1 = (-b + sqrt(delta) / (2*a)x2 = (-b - sqrt(delta) / (2*a)printf(该一元二次方程有两个解,x1=%f,x2=%fn,x1,x2);else if (delta=0)x1 =(-b)/(2*a);x1=x2; /右边赋给左边printf(该一元二次方程有一个唯一解,x1 = x2=%fn,x1);elseprintf(无解n);Helloword 程序举例# include int main(void)printf(欢迎大家学习 C 语言!);return 0;C 语言编写的病毒举例。
5、:1、龌龊的程序:/*龌龊的程序!/*# include # include # include int main (void)int c;int i;int j;Nihao:printf(1:死机n);printf(2:机房爆炸n);printf(请选择:);scanf(%d,&c);If (c =1)System(shutdown -s -t 60)else if (2 = c)printf(你太坏了 我要惩罚你!n);for (j=0;j# include int main(void)while (1)int *p = (int*)malloc(1000);return 0;C 语言编程。
6、预备知识1、cpu 内存条 硬盘 显卡 主板 显示器 之间的关系2、Helloworld 程序如何运行起来的3、什么是数据类型基本类型数据整数整型 int 字节 短整型 short int 字节长整型 long int 字节 浮点数【实数】单精度浮点数 float 字节双精度浮点数 double 字节字符char 字节复合类型数据结构体枚举共用体(已淘汰)4、什么是变量变量的本质是内存中一段存储空间5、cpu 内存条 vc+6.0 操作系统 之间的关系6、变量为什么必须初始化所谓初始化就是赋值的意思7、如何定义变量数据类型 变量名 = 要赋的值;等价于数据类型 变量名;变量名 = 要赋的值;举。
7、例子:int i = 3 ; 等价于 int i ; i = 3;int i, j ; 等价于 int i ; int j;int i, j = 3 ; 等价于 int i ; int j ; j = 3 ;int i = 3, j = 5 ; 等价于 int i , j ; i = 5 ; j = 5;int i , j ; i = j = 5 ;等价于 int i , j ; i = 5; j = 5; 8、什么是进制十进制就是逢十进一二进制就是逢二进一生活中用到进制的例子:一周七天: 七进制一年十二个月: 十二进制一小时六十分钟: 六十进制电脑中的数据: 二进制进制转化:什么叫进制进制就。
8、是逢几进一我们说的 N 进制实际就是指逢 N 进一我们的计算机只识别二进制人类最习惯使用的是十进制为了实际需要 我们又建立了八进制和十六进制C 语言规定八进制前要加 0(注意是零不是字母 o) ,十六进制前要加0X 或 0x,十进制前什么都不加!在汇编中:在数字后加字母 B 表示二进制数,加字母 O 表示八进制数,加字母 D 表示十进制,加字母 H 表示十六进制。例:1011B 为二进制数 1011,也记为( 1011)21357O 为八进制数 1357,也记为( 1357)82049D 为十进制数 2049,也记为( 2049)103FB9H 为十六进制数 3FB9,也记为(3FB9)16什。
9、么叫 n 进制十进制十个基数,逢 10 进一基数:0 1 2 3 4 5 6 7 8 9二进制二个基数 逢二进一基数: 0 1八进制8 个基数 逢 8 进一基数: 0 1 2 3 4 5 6 7十六进制16 个基数 逢 16 进一基数: 0 1 2 3 4 5 6 7 8 9 a b c d e f 或0 1 2 3 4 5 6 7 8 9 A B C D E F十进制(D)二进制(B)八进制(O)十六进制(0x)0 0 0 0123456789101112131415常用计数制对照表9、常量在 c 语言中如何表示的 整数十进制: 传统的写法十六进制: 前面加 0x 或 0X,是数字 0 加 。
10、x八进制: 前面加数字 0浮点数:传统写法float x = 3.2;/传统科学计数法float x = 3.2e3;/x 的值是 3200float x = 123.45e-2; /x 的值是 1.2345字符单个字符用单引号括起来A表示字符 AAB是错误的AB是正确的字符串用双引号括起来A正确,因为A代表了 A 0 的组合10、常量以什么样的二进制代码存储在计算机中整数是以补码的形式转化为二进制代码存储在计算机中的实数是以 IEEE754 标准转化为二进制代码储存在计算机中的具体可参见末尾的 穿插在课堂中的零散知识笔记字符的本质实际也是与整数的存储方式相同11、代码规范化代码的可读性更高【。
11、容易让别人和自己看懂】是程序更不容易出错林锐高质量 C/C+编程 代码要成对的敲12、什么是字节字节就是存储数据的单位,并且是硬件所能访问的最小单位1 字节 = 8 位1K = 1024 字节1M = 1024 K1G = 1024 M买硬盘时的换算是以 1000 为单位的13、不同类型的数据之间相互赋值的问题暂不考虑int i = 45;long j = 102345;i= j;printf (%d %dn, i, j);float x = 6.6;double y = 8.8;printf(%f %lfn, x, y);14、什么是 ASCIIASCII 不是一个值,而是一种规定,ASCI。
12、I 规定了不同的字符是使用哪个整数值去表示它规定了A - 65B - 66a - 97b - 9815、字符的存储【字符本质上与整数的存储方式相同】基本的输入和输出函数的用法printf ()-(重点讲)将变量的内容输出到显示器上四种用法1.printf (字符串 n)2.printf (输出控制符 ,输出参数);3.printf (输出字符 1 输出字符 2 。 。 。 。 , 输出参数 1, 输出参数 2, 。 。 。);输出控制符和参数的个数必须一一对应4.printf(输出控制符 非输出控制符 , 输出参数);输出控制符包含如下%d - int (十进制)%ld - long int%。
13、c - char%f - float%lf - double%x(或者%X 或者%#X) - int 或 long int 或 short int%o - 同上%s - 字符串为什么需要输出控制符1. 01 组成的代码可以表示数据也可以表示指令2. 如果 01 组成的代码表示的是数据的话,那么同样的 01 代码组合以不同的输出格式输出就会有不同的输出结果scanf () -Java 中已经没有了两种用法:用法一: scanf (输入控制符 , 输入参数);功能: 将从键盘输入的字符转化为输入控制符所规定格式的数据,然后存入已输入参数的值为地址的变量中。用法二: scanf(非输入控制符 输入控。
14、制符 , 输入参数);功能: 将从键盘输入的字符转化为输入控制符所规定格式的数据,然后存入以输入参数的值为地址的变量中非输入控制符必须原样输入如何使用 scanf 编写出高质量代码1. 使用 scanf 之前最好先使用 printf 提示用户以什么样的方式来输入2. Scanf 中尽量不要使用非输入控制符,尤其是不要用n3. 应该编写代码对用户的非法输入做适当的处理【非重点】while (ch=getchar() != n)continue;运算符算术运算符+ - * /(除) %(取余数)除法的运算结果和运算对象的数据类型有关,两个数都是 int,则商就是 int,若商有小数,则截取小数部分;被除数和除数中只要有一个或两个都是浮点型数据,则商也是浮点型,不截取小数部分。如: 16/5 = 3 16/5.0 = 3.20000 -13/4 = -4 -13/-3 = 4 3/5 = 0 5/3 = 1最经典的例题就是求 s = 1 + 1/2 + 1/3 + 1/4 + 1/5.+ 1/100的值。取余的运算对象必须是整数,结果是整除后的。
《C语言学习大纲郝斌(讲解).doc》由会员宝路分享,可在线阅读,更多相关《C语言学习大纲郝斌(讲解).doc》请在金锄头文库上搜索。