下载此文档

期中测试成绩统计.ppt


文档分类:中学教育 | 页数:约91页 举报非法文档有奖
1/91
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/91 下载此文档
文档列表 文档介绍
期中测试成绩统计
1
《程序设计》-2005年秋
期中测试成绩统计(上一次)
2
《程序设计》-2005年秋
第10讲 作用域规则和编译预处理命令简介
周水庚
2005年11月23/30日
3
《程序设计》-2005年秋
提要
局部变量和全局变量
存储类
变量定义
编译预处理命令简介
4
《程序设计》-2005年秋
提要
局部变量和全局变量
存储类
变量定义
编译预处理命令简介
5
《程序设计》-2005年秋
局部变量和全局变量
一个C程序通常由多个函数组成,可分放在若干源程序文件中,且允许各源程序文件分别单独编译。
程序用标识符命名程序对象,能直接用标识符引用它代表的程序对象的程序正文范围称为该对象的作用域
本章以变量为例讨论程序对象的作用域和存储类,有关结论可类似地适用于函数名、类型名、语句名等其他程序对象
6
《程序设计》-2005年秋
局部变量及其作用域
局部变量的作用域是定义它的函数体或复合语句,在定义它的函数或复合语句内能用变量名引用它,在定义它的函数体或复合语句之外不能使用它
void fullch(char ch, char *chpt)
{ *chpt = ch; /* 这里可以使用 fullch(),形参 ch,chpt */
}
void makestr(char ch, int x, char *str)
{ /* 这里可以使用 fullch(),形参 ch, x,str */
char s = ch;
/* 这里可以使用 fullch(),makestr(), 形参 ch, x,str, 局部变量 s */
if (x == 0) *str = '\0';
else { makestr(ch+1, x-1, str+1); fullch(s, str);}
}
7
《程序设计》-2005年秋
局部变量及其作用域(续)
#include <>
void main()
{ char s[120]; int m = 26;
/*这里可使用fullch(),makestr(),局部变量s,m,以及stdio,h中定义的程序对象*/
makestr('A', m, s); printf("STR = %s\n", s);
}
复合语句内定义的变量只在它的复合语句内有效
{ /* 这里实现交换整型变量 x 和 y 的值*/
int temp; /* temp只在本复合语句内有效*/
temp = x; x = y; y = temp;
}
8
《程序设计》-2005年秋
全局变量及其作用域
全局变量的作用域是整个程序,而直接可用变量的名引用变量的范围是从变量的定义处开始到该定义所在源程序的末尾的一段程序正文
别的地方(是指它的定义之前或别的源程序文件)如要用变量的名引用该变量,需在引用前对它作外部说明
9
《程序设计》-2005年秋
全局变量及其作用域(续)
float scale = ; /* 带初值的全局变量定义*/
extern int k; /* 对k作外部说明*/
int f1( int x)
{ int i; /* 局部变量*/
…/*因全局部量k有外部说明,这里也可使用k,但不能直接使用t*/
}
int k; /* 全局变量*/
int t; /* 全局变量*/
float f2(float a) scale 的自动有效范围
{ int i,j;
… k 和t的自动有效范围
}
void main()
{ int n; float m;

}
10
《程序设计》-2005年秋

期中测试成绩统计 来自淘豆网www.taodocs.com转载请标明出处.