1
C语言程序设计
1.8.11 习 题 七

习 题 七

7.1 编写函数,计算20个数中最大值、最小值和平均值,由main()调用该函数,并输出结果。(要求:使用全局变量max和m in返回最大值和最小值)

7.2 编写函数,计算两个整数的最大公约数和最小公倍数,由main()调用该函数,并输出结果,两个整数由键盘输入。(要求:使用全局变量gysh和gbsh返回最大公约数和最小公倍数)

7.3 编写程序,使用动态内存分配方式,对10个数按从小到大排序。

7.4 分别编写两个源程序文件,在一个文件中输入10个整数并输出运算结果,在另一个文件中对这10个数排序。(提示:使用extern将外部变量的作用域扩展到其他源程序文件)

7.5 阅读下列程序,写出运行结果。

img628

7.6 阅读下列程序,写出运行结果。

img629

7.7 阅读下列程序,写出运行结果。

img630

img631

7.8 阅读下列程序,写出运行结果。

img632

7.9 阅读下列程序,写出运行结果。

#include 〈stdio.h〉

int a;

static int b;

img633

7.10 下面有两个求一个数的平方值的宏定义,按下面情况调用,求a和b的值,请问哪一个结果正确?为什么?

  #define SQUARE1(x) x*x

  #define SQUARE2(x)(x)*(x)

  img634

  a= SQUARE1(5+1);

  b= SQUARE2(5+1);

7.11 使用带参数宏MAX(a,b),编写从a、b、c三个数中找出最大者的程序。

7.12 定义一个求两个值中小者的宏M IN,并编写一个测试该宏定义的程序。

7.13 使用带参数的宏,编写输入两个整数,求其相除的商和余数的程序。