C语言程序设计
Copyer:Vigiking ;第一章 计算机语言与C语言概述 ;?机器语言 最早问世,用二进制代码构成指令。 如: 100000 (+) 110000 (-) 用机器语言编程的缺点: ─繁琐、不直观、不易调试。 如计算y=2x2+3x-1需要七八条指令。 ─移植性差。 依赖于计算机。 ;?汇编语言 用符号构成指令,如:MOV、ADD 用汇编语言编程: 相对直观,但仍繁琐,仍是面向计算机的语言。
汇编语言是计算机间接接受的语言;?高级语言与低级语言相比,有根本性的区别: 是面向问题的语言。高级语言的一条指令(语句): y=2*x*x+3*x-1; 对应于:y=2x2+3x-1 y=sin(x); 对应于:y=sinx用高级语言编程:直观、易懂、移植性好(不依赖于具体计算机);上机运行高级语言程序需经过编译:
编译 执行
要上机完成一个计算问题,主要的任务就是用高级语言编写出相应的源程序。即至少要学会一种计算机语言。 ;1.2 C语言的特点 集高级语言和低级语言的优点于一身: ●能实现低级语言的大部分功能(如直接访问内存物理地址、进行位操作等)。 ●图形功能强。 ●运算符和数据结构丰富。 ●语法限制不太严格,程序设计自由度大。 ●生成目标代码质量高,程序执行效率高。 ;1.3 简单的C程序介绍
例1: main() 主函数说明 { 程序框架 printf(“abcdef”); 函数体 } 语句
程序的功能是输出字符串:abcdef ;例2:求两数之和。main(){ int a,b,c; a a=100; b=50; b c=a+b; c printf(“\n c=%d”,c);}程序运行结果:c=150 ;例3:求两数中的最大值。 函数类型 函数名 形参main() int max (int x,int y){ int a,b,c; { int z; scanf(“%d,%d”,&a,&b); if(x>y) z=x; c=max(a,b); else z=y; printf(“\nmax is:%d”,c); return(z);} }
a x b y c z (两个函数组成); 总结上例可知:(1) C程序由函数构成。(2) 函数由两部分组成: 函数说明部分:函数名、函数类型、形参名、形参类型。 函数体:实现函数的具体操作;由语句构成。(3) 程序总是从main函数开始执行。(4) 书写格式自由。(5)语句必须有分号。 : ; 第二章 算法 2.1 算法的概念 要利用计算机处理问题,光学习语言的语法规则还不够,最重要的是要学会针对各类型的问题,拟定出有效的解题方法和步骤。解题方法和步骤就是算法。;; 利用计算机处理问题的步骤: 1)设计好算法——算法设计; 2)用计算机语言实现算法——程序设计。 算法必须是“有效”的。 算法设计还要充分考虑算法的好坏。 衡量算法好坏的主要标准: ① 程序简练。 ② 执行速度快。 ③ 占空间少。 ;例:考虑 的算法。
算法①:直接表达。直接用语句 s=1+2+3+4+5+6+7+8+9+10;算法②