C语言学习(一)

1.C语言程序的基本结构

 

.c后缀 c程序

.cpp后缀 C++程序

 

c源程序经过编译道道二进制代码文件.obj

通过与函数库 连接 得到可执行程序.exe

 

1.1 C语言程序的一般形式

#include 语句

全局变量说明

void main()       /*主函数main() */

{            /*()内是函数

局部变量        /*main 定义的变量,在main中有效*/

程序段         /*完成特定功能的一系列语句 */

}

fun1()        /*用户自行定义的名为fun1的函数*/

{          /*fun1 函数体开始处*/

局部变量      /*fun1定义的变量,在fun1中有效*/

程序段        /*完成fun1特定功能的一系列语句 */

}

fun2(){      /*用户可以根据需要定义多个函数*/

.......

}

说明:

(1)C语言程序的开头一般都使用一个或多个include 语句,用来引入某些标准库文件。这类标准库文件通常称为头文件,

头文件的扩展名为.h;

 (2)程序的前部有时候可以定义一些全局变量,这些变量被后面的各个函数共享,但主要对全局变量的使用不能相互干扰。

在某个函数体内定义的变量,称为局部变量,它只在这个函数体内有效。

 (3)C语言程序都是由若干个函数为单位组成(如main(),fun1(),fun2()),每个函数又由若干个C语言基本语句组成,每个

语句必须以分号(;)结束。

 (4)C语言程序中必须有一个main函数(又称为主函数),作为程序执行的起点,但是main()位置不限,main()表示

是一个函数,其中main是函数的名称,()内列出来函数执行需要的n个参数,{}内为完成特定功能的一系列的语句。

 (5)为了实现程序设计的模型化,如果需要,用户可以定义若干个自定义的函数,如fun1(),fun2()...... 自定义函数的

作用是使程序结构清晰,便于实现某个功能的重复使用。

 (6)每个函数中的程序段可以由一系列语句组成,如完成输入数据,计算,输出数据和显示数据等功能。

2.简单的C语言程序

例如:编写一个C语言程序,其功能是在显示屏上输出Programming is fun!

#include<stdio.h>      /*头文件stdio.h 是标准输入输出头文件,指定输入 */

               /*为键盘,输出为显示屏 */

void main ()         /*主函数 */

{              /*花括号{}内为main函数的内容 */

printf("Programming is fun!\n");  /*使用stdio.h中已经定义的printf函数,其中"\n"是输出结果后光标转到下一行。

                  /*输出显示内容

}

运行结果是:Programming is fun !

例二:从键盘上输入两个实数,计算并显示这两个实数平方之和的平方根。

#include <stdio.h>

#include <math.h>      /*引入math.h头文件,一遍使用开平方函数sqrt()*/

void main()

{float x,y,s;         /*用float 定义表示实数的局部变量,x和y存放输入 */

              /*的数据,s存放计算结果*/

scanf("% f,% f",&x,&y);  /*从键盘上输入两个实数,&x,&y表示输入数据要放到在x和y所在的内存单元中去,&是取地址符号,

              &x表示的是x在内存中的地址 */

s =sqrt(x*x+y*y);    /*计算 */

printf("s = % f\n",s);      /*显示结果,常用的控制符号,"%d"是按十进制整数格式输出;"%c"是按单个字符输出,"%s"是按字符串格式输出*/

}

输入数据:

1,2

程序运行结果:

s=2.236068

例3:由main()函数和1个求和函数sum()构成C语言程序示例。

#include<stdio.h>

int sum(int x,int y)    /*计算两数之和 */

{             /*sum函数体开始*/

int z;          /*声明部分,定义变量 */

z= x+y;

return(z);        /*将z值返回,通过sum带回调用处*/

}

void main()

{

int a,b,c;

printf("Input the first number:");

scanf("%d",&a);

printf("Input the second number:");

scanf("%d",&b);

c = sum(a,b);                /*调用max,将调用结果赋值给c */

printf("sum=%d\n",c);

}

程序运行结果:

Input the first number:3

Input the second number:5

sum = 8

3.C语言程序的编写要求

 (1)C程序是由函数构成的,一个C源程序至少要有一个main函数。

 (2)一个C程序总是从main函数开始执行的,不论main函数在整个程序中的位置如何。

 (3)C程序书写格式自由,一行内可以写几个语句,一个语句也可以分写在多行上。不要把一个关键词,标识符,常量,

运算和字符串拆分为两行。最好每个语句占用一个书写行,每个函数都按语句的层次关系形成缩进形式。

 (4)使用 /*..........*/进行注释。

4.C语言程序的执行过程

输入与编译源程序——>编译源程序,产生目标程序——>连接各个目标代码,库函数,产生可执行程序——>运行程序。

源程序:程序可以用高级语言或汇编语言编写,用高级语言或汇编语言编写的程序称为源程序。C程序源程序的扩展名".c"。

事实上编写的程序,不管采用什么计算机语言,都是源程序,因为不会有人用机器语言去编程。源程序不能直接在计算机上执行,

需要用"编译程序"将源程序翻译为二进制形式的代码。

 

目标程序:源程序经过"编译程序"翻译所得到的二进制代码称为目标程序。目标程序的扩展名为".obj"。目标代码尽管已经是机器

指令,但是还是不能运行,因为目标程序还没有解决函数调用问题,需要将各个目标程序与库函数连接,才能形成完整的可执行的程序。

 

可执行程序:目标程序与库函数连接,形成的完整的可在操作系统下独立执行的程序称为可执行程序。可执行程序的可扩展名为".exe"

(在DOS/Windows环境下)

5.C语言程序的开放环境

目前常用的C语言集成化开放环境有Turbo C 2.0(DOS 平台上的C编译器),GCC(GNC C Compile,UNIX以及Linux平台上C/C++标准编辑器)

,Visual C++和Turbo C 2.0 程序开放环境。

现在常用的是Visual C++ 6.0版本,虽然公司已经推出汉化版本,但只是把菜单进行了汉化。

Visual C++ 6.0使用实例:

 (1).执行"File——>New"命令,打开"Files"选项卡如下图,先在"File"栏中输入test.c (把C源程序文件命名为test.c),在"Location"框中选择

已经建立的文件夹,如:D:\Program Code\C,然后选中"C++ Sourse Files",单击"确定"按钮,就新建一个文件test.c。

 (2).编辑和保存:在编辑窗口如图中输入源程序,然后执行"File"——>"Save"或"File"——>"Save As"命令,保存源文件。

 (3).编译:执行"Bulid"——>"编译/Compile"命令或按Ctrl +F7组合键如图,在"产生工作区"对话框中如图选择"是(Y)"命令,开始编译

并在信息窗口显示编译信息。信息窗口中出现的"test.obj - 0 error(s),0 warning(s)",表示编译正确,没有发现(语法)错误和警告,并生产了目标

文件test.obj,如果显示有错误error(s),指程序中存在致命的错误,必须要改正;如果显示有警告warning(s),虽然不影响生产目标文件,但通常

也应该改正如图

 (4).连接:执行"Build"——>"构件/Build"命令或按F7键,也可用"重建全部/Rebuild All"命令,开始连接,并在信息窗口中显示连接信息如图:

信息窗口中出现的"test.exe-0 error(s),0 warning(s)"表示连接成功,产生了可执行文件test.exe。

 (5).运行:执行"Build"——>"执行/Execute"命令或按Ctrl+F5组合组合键如图,自动弹出运行窗口如图,显示运行结果"Hello World!",其中"Press any key

to continue"提示读者按任何键退出DOS窗口,返回到VC++编辑窗口。

 (6).关闭程序工作区:执行"File"——>"关闭工作区/Close Wokespace"命令如图,在出现对话框如图选择中选择"是(Y)"命令,关闭工作区。

6.Turbo C 2.0介绍

   Turbo C 2.0是borland公司1987年推出的C语言编译器,具有编译速度快,代码优化效率高等优点。Turbo C 2.0提供了两种编译环境:一种是

类似与UNIX环境的命令行,包含一个TCC编译器和一个MAKE实用程序;一种是集成开放环境,由编辑器,编译器,MAKE实用程序,RUN实用程序和一个调试器组成。

 

 

 

posted on 2012-10-28 09:37  一梦浮生2012  阅读(281)  评论(0编辑  收藏  举报