《C语言程序设计II》期末复习资料 下载本文

}

gets(infile);

printf(\请输入目标文件名:\gets(outfile);

in = fopen(infile,\if (in==NULL) { printf(\不能打开源文件!\\n\ exit(0); }

out =fopen(outfile, (1) ); if (out==NULL) { printf(\不能打开目标文件!\\n\ exit(0); }

ch=fgetc(in);

while ( (2) ) //判断是否到源文件尾 { (3) (ch, out);//将读取的源文件内容写入目标文件中 ch=fgetc(in); }

printf(\文件复制完毕!\\n\\n\fclose(in); fclose(out); return 0;

}

编程题:(说明:加颜色的题目与考题相似度大一些)

1、课件第1讲 例3:对输入的两个整数按大小顺序输出。现用函数处理,而且用指针类型的数据作函数参数。

2、课件第1讲 例4: 对输入的两个整数按大小顺序输出

3、课件第1讲 例5: 输入3个整数a,b,c,要求按由大到小的顺序将它们输出,用函数实现。

4、实验_1 5、(基础题)请参考教材P226-229图示,请说明下列函数中,哪些

能实现主函数的实参数据交换功能,哪些不能实现或程序存在问题,为什么?(最好上机验证) (1)

void swap1(int *p1,int *p2) { } (2)

void swap2(int *p1,int *p2) { } (3)

void swap3(int x,int y) {

int temp;

temp=x; x=y; y=temp; } (4)

void swap4(int *p1,int *p2) {

int *temp; *temp=*p1; *p1=*p2; *p2=*temp; int temp; temp=*p1; *p1=*p2; *p2=temp;

}

int *p; p=p1; p1=p2; p2=p;

5、课件第2讲 例1: 验证不同数据类型,每一数据单元所占用的存储空间不同

6、课件第2讲 例2: 用自增运算改写前一程序(部分)

7、课件第2讲 例4: 将数组a中n个整数按相反顺序存放。

8、课件第2讲 例5: 用指针方法对10个整数按由大到小顺序排序。

9、课件第2讲 例6: 有一个3×4的二维数组,要求用指向元素的指针变量输出二维数组各元素的值。

10、课件第2讲 例7: 有一个3×4的二维数组,要求用指向一维数组元素的指针变量输出任一行任一列元素的值

11、课件第2讲 例8: 有一个班,3个学生,各学4门课,计算总平均分数以及第n个学生的成绩。

12、实验_2 2、(基础题)使用指针编程实现:输入3个正整数,按由小到大顺序输出。程序运行结果如下所示:

13、实验_2 3、(基础题)分析、运行下列程序,理解二维数组“行指针”、“列指

针”的类型,加减1所移动的字节数,熟悉二维数组元素的间接访问方法,并回答相关问题

14、课件第3讲 例1: 通过字符指针变量输出一个字符串。

15、课件第3讲 例3: 用函数调用实现字符串的复制

16、课件第3讲 例7:将若干字符串按字母顺序(由小到大)输出。

17、课件第3讲 例9: 有一个指针数组,其元素分别指向一个整型数组的元素,用指向指针数据的指针变量,输出整型数组各元素的值。

18、实验_3 1、(基础题)以下程序的功能是:在主函数中定义一个int型4行5列的数组并初始化,然后调用print_array()、change_values()来输出、修改数组元素的值,请根据题意填写所缺代码,再运行程序,体会数组元素的不同访问方法。程序运行结果如下所示:

#include #include #include int main() { int a[4][5]={0}; void change_values(int *p, int n); void print_array(int (*p)[5],int m); printf(\修改前,二维数组各行各列元素:\\n\ (1) (2) //调用change_values函数修改数组元素的值