C语言基础(01-引言及预备知识)

发表于:2007-07-14来源:作者:点击数: 标签:
C语言基础(01-引言及预备知识): C语言是一门功能强大的编程语言,它也是C++语言的基
C语言基础(01-引言及预备知识):    C语言是一门功能强大的编程语言,它也是C++语言的基础。C语言属于中级语言。这里所说的中级是相对于计算机的底层硬件而言的。汇编语言是最低级的语言,它可以直接与硬件打交道。高级语言有Pascal、Basic、Fortran等等。高级语言的一条语句对应低级语言的很多条语句,任何高级语言编写的程序都要经过编译程序的编译、连接才能成为可以运行的程序。编译连接的过程也就是把高级语言翻译成机器语言(二进制机器码)的过程,而汇编语言是基本上与机器语言一 一对应的一种语言。这个翻译过程是由编译程序自动完成的。把C语言定为中级语言是有它的道理的,因为C语言既有汇编语言的存取底层硬件的能力,又具有高级语言的许多特点。熟练掌握了C语言,学习其它的各种编程语言应该是很轻松的了。

C语言的书写格式:
1) 一个C语言编写的源程序,必定有一个主程序(称为main()函数,在C语言中子程序称为“函数”(当然,不要理解成为数学里面的“函数”)。但是决不能有一个以上的main函数(即只能有一个)。
2) 函数语句块用‘{’括号开始, 以‘}’反括号结束。这样的花括号必须成对出现。
3) 表达式写在小括号里面,以‘(’括号开始,以‘)’反括号结束。
4) 函数不能嵌套,即函数里面不能再套函数。(每一个函数是完成一个特定功能的函数模块)

C语言的组成:
    C语言是由许多函数组成的。其中只有一个主函数(main()函数)。C程序执行时总是从main函数的‘{’处开始,至main函数的反大括号'}'处结束。当然还有其它一些规则,这将在以后的学习中去熟悉它。

C语言的书写规则:
    C语言在书写时有它自身的特点:书写格式比较自由,在一行里可以写多条语句,一个语句也可以分写在多行上。虽然如此,在书写源程序时还是要注意哪些可以自由书写,而哪些必须要按照书写规则来书写。
几条规则写在下面:
1) 一行内可以写几个语句,建议一行不超过两条语句;
2) 一条语句可以写在多行上;
3) C语句不需要写行标号;
4) 每条语句及数据定义的后面要写上分号以表示该语句结束;
5) C语言中注释用 /* */来表示;
6) 建议书写时采用缩进格式;
7) 花括号、小括号都是成对出现的。

一个最简单的C程序的编写:
/* 程序代码*/                       /* 注释部分*/
main()                     /*main是主函数名。紧跟在main后面的括号是放参数的。
                             括号里面为空说明main函数不需要参数*/
{                          /*正写的大花括号表示main函数从这里开始*/

}                          /*反写的大花括号表示main函数到这里结束*/

说明:由于是一个演示程序,在函数体内并没有任何可以执行的语句,也就是这个程序什么事也不做。
这个程序就是这么简单: 写在一行上就是 main() {  }
你在TC的编辑环境下把这段代码输入进去,按F9键编译连接,按CTRL_F5运行,一定很正常。但是什么结果也不会有,因为在main函数里面什么代码也没有。

下面再举一个可以向屏幕上输出一条信息的例子:
main()
{
    printf("这就是C语言编写的程序!");        /*这一条语句的作用是向屏幕输出一条信息
                                               ”这就是C语言编写的程序!"*/
}
在这个程序中,main函数只有一条语句:printf("这就是C语言编写的程序!");这个语句的作用是向屏幕输出一个字符串。有关这个语句的知识以后再讲。现在要注意的是一个C语言程序的框架是怎样组成的。

C语言程序的几种文件格式:
    1、 源程序---在TC集成环境中输入的程序文本称为源程序。源程序是一种文本文件。它是我们看得见并认识的一种文件。其扩展名为.C。例如你把文件保存为TEST,那么在磁盘上应看得到TEST.C这个文件。这样的文件可以用记事本打开。
    2、二进制文件---写完了源程序后接着要做的是编译这个文件。在TC集成环境里是按ALT_F9键,编译后生成了一个二进制文件,这个二进制文件名为TEST.OBJ,也就是扩展名为OBJ的目标文件。
    3、运行文件---最后一步是make(或Link),在TC集成环境里是按F9键Make之后生成了一个可以在DOS下运行的文件,其扩展名为EXE。如TEST.EXE。这个EXE文件是由第2步中的OBJ文件生成的。OBJ文件虽然是二进制文件,而电脑又是可以运行二进制文件的,为什么还要把OBJ文件Link为EXE文件才能运行?这里的知识就比较多了,这里不能多讲。但是要明白一点,在DOS下仅仅有了一个二进制文件还不能运行,因为操作系统要把这些二进制文件加以规划,把相应的数据、程序代码放到应该放的内存位置,这样的经过严密规划和组织好了的二进制文件才能运行。而这些只有在生成的EXE文件里面才做完了这些工作。

---------------------------------------

作业题:
1、下列程序中格式错在(    )处。
    A. main()                B. int a,b,z;
    C. a=2:b=3;              D. z=a+b;

分析:A,B,D 没有错误。 C 中在a=2后面应该是分号而不应是":"号
答: C

2、C语言允许将一条语句写在两行上,下列语句不正确的是
    A. int a,
        B;
    B. int a
        ,b;
    C. int
        a,b
    D. int a,b
        ;
分析:C语言规定可以在语句中的任何一个分隔符或空格处换行。上面4个选项中D.有问题因为在D.中第一行的最后没有分隔符,而第二行只有一个分号,可以看做一个语句。所以D中的错误为:第一行是一个独立的语句,但是少了一个分号。
答: D
3. C语言的一行写不下时,可以
    A. 用逗号换行                B. 用分号换行
    C. 在任意一空格处换行        D. 用回车符换行
分析:C语言可以在任何一个分隔符或空格处换行,所以此题的正确答案是 C
答: C
4. 下列程序段中,哪一个是错误的注释方法?
A.  #in/*包含*/clude<stdio.h>
    void main()
    {


    
    }

B.  #include<stdio.h>
    void main/* */(/*主函数*/)  
    {

    }

C.  #include<stdio.h>
    void main()
    { int x/*初始化*/=10;
        /*打印*/printf("%d",x);
    }

D.  #include<stdio.h>
    void main()
    {
        int x=10;
        printf("%d",x);
        /*打印x的值*”*=10*/
    }
分析:根据C语言的规定:注释不能插在标识符的中间,在其它有分隔符的地方都可以插入注释,上面四个程序段中只有A是将注释插入在标识符的中间了。所以A是错误的。
答: A

5. C语言程序是由(   )组成的?
答:C程序是由函数组成的。

6. C程序运行时,运行的是什么文件?
答:运行的是EXE文件。

原文转自:http://www.ltesting.net