第一章程序设计与c语言总结

引例

由上面程序可以看出,C程序是由两数组成的。本程序涉及4个函数:main()、max
0、scanf()和 printf(。其中,main()两数是程序的主两数,max()是程序中定义的西数,其
作用是求两个数中的最大数,scanf()和 printf()是系统事先设计好的西数,分别用于输人和
输出。
所有的 C程序有且只有一个main0)两数。C程序总是从main()函数的第一条语句
开始运行,当 main(两数结束时,程序也就结束了。
本程序执行时,首先从调用 printf(两数开始,输出第一个提示,然后调用 scanf()函
数从键盘获得一个值,并赋给变量a;接着调用第二个 printf()两数输出第二个提示,再调用
第第二个 scanf()西数从键盘获得一个值,并赋给变量b;求两个数的最大值是由 max()函数完
成的,所以在程序执行到c=max(a,b)时,会首先调用max()两数,调用时将实际参数a和b
的值分别传递给max(两数中的形式参数x和y;然后,开始执行西数max()中的语句;用if
语句判断并得到最大值,在执行到“return 2;”时,两数结束运行并把2的值返回;程序运行回
到 main(西数调用的地方(即c=max(a,b)),变量c得到最大值;最后再次调用 printf()函
数输出最大值,输出格式中的每个%d对应输出一个十进制整型数,第一个%d对应a,第二
个%d对应b,第三个%d对应c。
程序中包含了数据表达(变量定义)与数据处理(流程控制)两部分。引例在 main(
西数中数据表达使用语句“int a,b,c;”,该语句定义了3个整型变量,变量a与b分别存放
输人的整数,变量c用于存放两数调用的结果,即a与b的最大值;在max()两数中数据表
达使用语句“int z;
”,z为一个临时工作变量,它只能在max()两数中使用,其作用是存放形
参×与,中的最大值,西数结束时返回给main()函数的调用处。在max()函数中数据处理
(流程控制)使用迁语句来实现。

程序与程序语言设计的发展

特点:①完成某一特定的任务;②使用某种程序设计语言描述如何完成该任务;③存储在计算机中,并且被运行后才能起作用。

程序设计语言的发展

  1. 机器语言(属于第一代计算机语言,用二进制表示)
  2. 汇编语言(采用助记符来代替二进制,也被称为第二代计算机语言)
  3. 高级语言 (特点:易学,易用,易维护,人们可以更有效,更方便地用它来编制各种用途的计算机程序)

发展阶段:非结构化的语言,结构化的语言(C),面向对象的语言(C++,JAVA)

程序设计语言的功能

  1. 数据表达
  2. 流程控制

程序设计语言除了具备良好的数据表达能力之外,还必领提供对不同类型的数据进行
处理的手段。对数据的处理是通过语言的一系列流程控制语向实现的。
在1.2.1 节已经介绍,按照结构化程序设计的观点,任何程序的基本结构都可以通过 了
种基本的控制结构进行组合来实现。分别是顺序结构、选择结构和循环结构。
(1)顺序控制结构:一条语句执行完后,按自然顺序执行下一条语句。C语言中的赋值
语句、输人、输出等都构成了顺序结构。
(2)分支控制结构:又称选择结构。计算机在执行程序时,常常需要根据不同的条件选
择执行不同的语句。例如,C语言中的it 与switch 语句都可以构成选择结构。
(3)循环控制结构:许多时候,计算机需要重复执行相同的语句。重复执行一般是有条
件的,在条件满足时,重复执行;在条件不满足时,则不会重复执行。C语言中的 for、while
与 do—while 语句都可以构成循环结构。
这三种结构的共同特点是:
①只有单一的人口和单一的出口;
②结构中的每个部分都有被执行的可能;
③结构内不应出现永不终止的死循环。
当所要求解的问题复杂时,所编写的应用程序经常由上万系语向组成,需要由多人来完
成。这时,常常要将一个大任务分解为若干个子任务,每个子任务叉分成很多个小子任务,
每个小子任务只完成一个简单的功能。在程序设计时,用一个个小模块来实现这些小子任
务。而每一个小模块基本上均由上述的 了种基本结构组合而成。这种程序设计方法就見结
构化程序设计(Structured Programming)。C语言就是欺型的结构化翟序设计语言。

程序的算法表示

软件的主体是程序,程序的核心是算法。

特征:

1)确定性。算法的每条指令必须有明确的含义,不能有二义性。对于相同的输人必须
得出相同的执行结果。
(2)有穷性。
一个算法应包含有限个操作步骤。也就是说,在执行若干个操作步骤之
后,算法将结束,而且每一步都在合理的时间内完成。
(3)可行性。算法中指定的操作都可以通过已经实现的基本运算执行有限次后实现。
(4)有零个或多个输人。算法是用来处理数据对象的,在大多数情况下,这些数据对象
需要通过输人来得到。
(5)有一个或多个输出。算法的目的是为了求“解”,“解”只有通过输出才能得到.
如果某个问题的解决方法无法表示为计算机算法,那么计算机也无能为力。
算法的表示可以有多种形式,如文字表示、流程图表示、伪代码和程序设计语言表示等。

  1. 用文字描述算法
  2. 用流程图描述算法
  3. 伪代码表示
  4. 程序设计语言表示

C语言程序设计的特点

C语言的发展历史

C语言的特点

(1)C语言语句简洁紧凑,使用方便灵活。ANSIC 中只有32 个关键字和,种控制语
白。程序书号能式自由,一行中可书写生个语向,一个语向可书写在不同行上。语法表达的
活、紫没,例如用运算行++和--表示加1和減 工操作,用一对花括号“{}”表示复合语后
的开始和结束,可采用宏定义和文件包含等预处理语句等等。
(2)运算符丰富,表达能力强。
C语言提供了 34 种运算符,运算类型极其丰富。例如,C语言把括号、赋值和强制类型
转换都作为运算符处理,可以实现在其他高级语言中难以实现的多种运算。
(3)C语言程序可移植性好。C语言程序中,没有直接依赖于硬件的语句。与硬件有关
的操作,如数据的输人、输出;都是通过调用系统提供的库西数来实现的,而这些库函数本身
并不是C 语言的组成部分。因此编写的程序很容易由一个系统移植到另一个系统中。
(4)生成的目标代码质量高,运行效率高。与其他高级语言相比,C语言程序经编译后
生成的目标代码运行效率高。目前C的主要用途之一是编写“嵌人式系统程序”
(5)语言处理能力强。由于C语言中引人了指针、地址、结构、位运算等功能,与汇编语
言十分接近,大大提高了语言的处理能力。
(⑥C语言是一种结构化语言。
C语言程序是由两数组成的,西数构成了C语言程序的一个个程序模块,加上C语言提
供了编写结构化程序所需要的各种数据类型和控制结构,从而容易达到结构化程序设计的
要求。
尽管C语言有众多的优点,但 C语言也有其不足之处:主要表现为 C语言对语法检查
不严格,许多时候需要程序员自己保证程序的正确,而这对初学者是很难做到的。例如,数
据类型检查不严格,表达式运算会出现二义性;对数组下标越界不检查,导致程序出错。

C语言的约定

  1. C语言中的约定(标识符,关键字,用户自定义标识符,预定义标识符,分隔符)

  2. C语言的语法成分(常量,变量,运算符,表达式,语句,函数定义与调用,输入与输出)

C语言的编辑,编译,链接和运行

程序设计的任务

  1. 分析问题
  2. 设计算法
  3. 程序设计
  4. 运行并调试程序
  5. 分析程序运行结果
  6. 编写程序文档

运行C程序的步骤与方法

步骤:编辑源程序——对源程序进行编译——与库函数链接——运行目标程序

  1. 编辑源程序(C语言的扩展名为.C)
  2. 编译
  3. 链接
  4. 运行

下载与使用VisualC++
 

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值