C语言程序开发过程
C语言是一种面向过程的程序设计语言,具有使用简洁、灵活、方便、运算符丰富、表达能力强、数据类型丰富、可移植性好、生成目标代码质量高等特点。
程序开发过程
C语言程序是由一个或多个具有独立功能模块组成,这些模块成为函数,也是组成程序的基本单位,在这些函数中,必须有一个名为main的函数,该函数成为主函数,也是一个程序的入口。
- 编辑:C语言源程序需要先经过编写,然后通过计算机存储到磁盘文件中,这一过程称为编辑。编辑包括以下内容:
1.编写C语言源程序。 2.将源程序逐个字符输入到计算机。 3.修改源程序。 4.将修改好的源程序保存到磁盘文件中,此时文件扩展名为cpp。 -** 编译**:就是将已编辑好的源程序翻译成二进制的目标代码,编译过程如下: 1. 对源程序进行语法检查,若有错,指出错误所在,此时应进入编辑状态进行修改,再重新编译。 2. 若无错,生成扩展名为.obj的目标文件。 - 连接:经编译后得到的二进制代码还不能直接执行,还需要把编译好的各个模块的目标代码与系统的标准模块(C语言标准函数库)进行连接,得到具有绝对地址的可执行文件(此处体现了C语言具有允许直接访问物理地址,即直接对硬件操作的特点),其扩展名为.exe。
- 执行:执行一个经编译和连接后得到的可执行文件。
C语言开发步骤
- 需求分析:是指对要解决的问题进行详细的分析,弄清楚问题的要求,包括需要输入什么数据,要得到什么结果,最后应该输出什么。
- 算法设计:是指对要解决的问题设计出解决问题的方法和具体步骤。
- 编写程序:是把算法设计的结果变成一行行代码,输入到程序编辑器中,然后将此源程序以文件的形式保存到自己的指定文件夹中。
- 编译程序:需要利用编译器把送入的源程序翻译成机器语言。
- 连接程序:经过编译得到的目标文件不能供计算机直接执行。前面已经介绍此处就不多做解释。
- 运行程序:运行可执行文件,得到运行结果。能得到运行结果并不能说明程序是正确的,要对运行结果进行分析,分析其是否合理。检查是最好多设计几组数据检查。如果出现某一组数据有问题,说明程序存在逻辑错误,此时应该去修改源程序,直到没有错误为止。
- 编写程序文档:如同正式产品都有产品说明书一样,正式提供给用户使用的程序,也必须向用户提供程序说明书。程序说明书也被称为用户文档,应该包含程序名称、程序功能、运行环境、程序的装入和启动、需要输入的数据,以及使用注意事项等内容。
函数及其结构
- 语句(是组成函数的基本单位):C语言规定每个语句都必须由“ ;”结束。语句分为以下两种:
1.说明语句:说明语句用来完成对数据的描述,程序中用到的每一个变量都要先通过说明语句来定义,定义后才能使用。 2.可执行语句:可执行语句用来完成对数据的操作,是程序中用到的常量和用说明语句定义的变量进行加工处理。 (1)表达式语句:一个C语言表达式后跟一个分号构成的语句。格式为:表达式; (2)函数调用语句:是把函数调用作为一条语句(在写代码过程中会用到很多)。 (3)空语句:只有一个分号构成的语句。程序在执行是不产生任何操作。 (4)复合语句:是一对花括号括起来的一组语句。格式为:{语句1 语句2 语句3…语句} (5)流程控制语句:用于控制程序流向,它们由系统特定关键字组成。可分为以下三类: - 条件判断语句:if语句、switch语句。
- 循环语句:do while语句、while语句、for语句。
- 转向语句:break语句、continue语句、return语句、goto语句
标识符
是用来标识某个实体的符号,标识符分为以下三类:
- 系统标识符:是C语言的关键字包括数据类型标识符、储存类别标识符、流程控制标识符和存储长度运算符等。
- 预定义标识符:是C语言中预先定义使用的标识符。图系统常量(NULL等)、库函数名(printf、scanf、sqrt、fabs)等。
- 用户自定义标识符:使用户在程序中所使用的标识符,标识符的命名规则:以字母或下划线开头,由字母、数字、下划线组成。注意用户标识符不能与系统关键字同名、标识符区分大小写、标识符一个做到“见名知意”(总不能你自己整了个标识符结果自己还不知道啥意思吧)、预定义标识符不是C语言的关键字。
函数定义
函数定义的格式为: 返回值类型 函数名(参数类型1 形式参数名1,…,参数类型N 形式参数N) { 数据定义 数据操作 } 说明:
- 返回值类型是由系统提供的类型标识符,用以说明该函数返回值的类型,如果没有定义函数返回值类型,系统默认返回值类型为int。
- 函数名、形式参数名必须是C语言的合法标识符,由用户对其进行命名,命名时必须遵循标识符命名规则。
- 形式参数简称形参,参数类型是系统提供的类型标识符,用以说明相应形参类型。
- 一对花括号是函数必不可少的组成部分。其内的部分称为函数体,通常由数据定义和数据操作两部分组成。数据定义部分用以定义函数中将要用到的数据;数据操作由若干条可执行语句组成,由他们给出对数据的所做操作。
- 如果函数有返回值,通常在函数体内必须有return语句,用来返回函数执行的结果。
- == return语句的作用:使程序流程从被调函数返回到主调函数的函数调用处,并将被调函数的返回值带回到函数调用处==。
函数调用及函数声明
1.函数调用
如果在一个程序中除了主函数外,还有其他函数,要完成其他函数的功能,必须由主函数或另一个函数来调用,把调用其他函数的称为主调函数,相应的其他函数称为被调函数。 函数调用的一般格式: 【变量=】被调函数名(实际参数) 说明:
- 实际参数简称实参,实参可以是常量,也可以是变量,还可以是表达式,但变量和表达式都必须有确定的值。
- 实参和形参一一对应 ,即实参要与形参的顺序、个数、类型保持一致,两个实参直接用逗号分隔。
- 方括号的内容是可选的,当被调函数有返回值时,应该将函数调用的结果赋值给一个变量。
2.函数声明
在一个函数调用另一个函数之前,必须对被调函数进行声明。 函数声明格式: 类型标识符 函数名 (形参表)
-函数声明是一个说明语句,必须在结尾加上分号。
主函数的结构
在C语言程序中,必须有一个主函数。 主函数书写格式: int main { 数据定义 数据输入 函数调用 数据输出 return 0; } -return 0;用于通知操作系统程序正常结束。
注释
- 以 /开头 ,以/结束,中间写注释内容。用于多行注释。(此处反斜杠有星号,我不知道为啥显示不出来,将就着看一下吧,后面代码部分会展示)
- 以//开头,在后面写注释内容。用于单行注释。
代码展示
输出你好
#include <stido.h>
int main()
{
printf("你好\n");
return 0;
}
输入两个整数并求出两个整数的和(必须使用函数调用)
首先我们分析题目 1.题上告诉我们要输入两个量和得出结果,所以我们需要定义3个变量 2.有了变量后我们要知道求和公式:输入的nmu1+输入的num2=和 3.此处我们会用到函数调用,所以我们还需要声明自定义函数
#include <stdio.h>
int SUM(int x,int y);
int main()
{
int num1,num2,sum;
printf("请输入两个整数:");
scanf("%d%d",&num1,&num2);
sum=SUM(num1,num2);
printf("两个整数的和是:%d\n",sum);
return 0;
}
int SUM(int x,inty)
{
int z;
z=x+y;
return z;
}
欢迎大佬指正
|