- 4
- 0
- 约9.3千字
- 约 7页
- 2016-10-13 发布于贵州
- 举报
第二章 C程序的初步知识
C程序设计的初步知识
简单C语言程序的构成和格式
为了了解C语言程序的构成和编写格式,先看一个例子
根据半径r, 求圆的周长和面积。
#include stdio.h /*头文件*/
#define PI 3.14159
void main()
{ double r, t, s; /*定义部分*/
printf(input r:);
scanf(%lf,r);
t=2*PI*r; s=PI*r*r;
printf(t=%10.2f,s=%10.2f\n,t,s);
}
1)C语言程序的每一条语句以分号结束,它是C语句的一部分,但不能说分号是语句之间的分隔符
2)注释语句的符号必须成对出现,且不允许嵌套,同时“/”和“*”之间不能有空格
3) 预处理命令不是C语言语句,它只是程序的组成部分,因此之后不加“;”
在这里,给大家讲解 编译预处理和动态存储分配(13章)
编译预处理
在C语言中,凡是以“#”开头的行,都称为“编译预处理”命令行,末尾不得用“;”号结束,因为它不是C语言语句。这里我们重点介绍#define和#include命令行的应用。
宏替换
1、不带参数的宏定义
1)#define 宏名 替换文本
比如,我们前面的举例中的#define PI 3.14159,在define 宏名和替换文本之间用空格隔开。这里的宏名要求符合C语言中标识符的规定。
2)#define 宏名
这种情况只说明标识符被定义,不常用。
注意:用作宏名的标识符通常习惯用大写来定义。
2、带参数的宏定义
#define 宏名(形参表) 替换文本
例如:#define ADD(x,y) ((x)*(y))
.......
a=ADD(3,4); /* 宏调用语句 */
b=2*ADD(a+2,a); /* 宏调用语句 */
注意:①宏名与“(”之间不能有空格;
②宏替换与函数调用区分开来,在这里,宏替换对参数没有数据类型的要求。
③宏定义的作用域问题
举例(2009年9月真题):
#include stdio.h
#define f(x) x*x*x
void main()
{int a=3,s,t;
s=f(a+1);t=f((a+1));
printf(“%d,%d\n”,s,t); }
二、文件包含
文件包含是指在一个文件中,去包含另一个文件的全部内容。
#include “文件名” 或 #include 文件名
比如:#include stdio.h #include “math.h”
该命令行通常写在程序的开头,又称“头文件”。
*13.2 动态存储分配
让我们再回到前面第二章C语言程序格式的介绍
2.2 标识符、常量和变量
标识符
一、C语言标识符定义
1)由字母、数字和下划线组成,不能用其他字符
2)区分大小写
3)标识符的有效长度,不同的编译系统规定不同,如TURBO C的标识符的有效长度为8位。如number101和 number102,编译系统将二者看成同一个标识符。
二、标识符的分类
1、关键字
系统已定义好的具有固定含义的标识符。如int、if等。
2、预定义标识符
系统中有特定用途,但可以作为其他用途来定义。如scanf、printf、define等标识符。尽量避免挪作他用。
3、用户定义标识符
我们在定义标识符的时候,不用前1) 2)系统规定有特定含义的标识符,符合标识符的定义规则就行。
第12章 C语言中用户标识符的作用域与存储类
在C语言中,我们定义的标识符(变量)都有它的作用域(也就是该变量的作用范围),变量的作用域与其定义语句在程序中出现的位置有直接的关系。
12.1 局部变量和全局变量
局部变量:在函数内部(包括函数的形参)或复合语句内部定义的变量。其作用域为定义它的函数内或复合语句中。
全局变量:在函数外部定义的变量。作用域为整个源程序。
举例(2009年真题):
#include stdio.h
int a=5; /* 这里的a就是全局变量 */
void fun(int b)
{int a=10; /* 这里的a、b为局部变量 */
a+=b;printf(“%d”,a); }
void main()
{int c=20;
fun(c); a+=c; /* 这里的c为局部变量,a 用全局变量*/
prinf(“%d\n”,a); }
您可能关注的文档
最近下载
- 智慧物流与供应链管理-刘伟华-第7章.pptx VIP
- 2026中国贸促会直属单位招聘工作人员10人备考题库附答案详解(实用).docx VIP
- 公路路基路面养护培训ppt课件.pdf VIP
- 办公文秘面试常见问题.pdf VIP
- 第三章第二节分子晶体与共价晶体第二课时.pptx VIP
- AI Edge需求、愿景与潜在关键技术白皮书-2026.pdf VIP
- 中职学校资产管理存在的问题及对策建议思考.docx VIP
- 智慧物流与供应链管理-刘伟华-第12章.pptx VIP
- 一种超亲水不锈钢填料改性方法.pdf VIP
- 2025年高考政治课本知识背诵默写清单:逻辑与思维(背诵版).pdf VIP
原创力文档

文档评论(0)