如果题目要求定义函数,写出函数定义后还需要定义一个主函数,其中调用自己定义的函数,为它提供适当的数据,试验所定义的函数。如果定义的函数有返回值,可以用变量保存其返回值,而后打印出来检查;或者直接把函数调用写在 printf 调用里(注意正确写出转换描述)。没有返回值函数就直接调用。 为确认一个函数能正确工作,需要在主函数里写多个函数调用,用不同的数据执行它,看它是不是都能正确处理(第4章最后一节有这方面的讨论)。
|
习题 | 题目和讨论 |
6 | 定义求圆球的体积、求圆球的表面积、求圆柱体的体积、求圆柱体的表面积的函数。
提示和讨论: 这几个函数都非常简单,函数体里只需要一个 return 语句。需要确定:
|
8 | 定义函数:double tmax(double, double, double), 它返回三个参数中最大的一个。写一个主函数试验各种参数情况。 提示和讨论: 这里需要用嵌套的条件表达式,或者嵌套的 if 语句(条件语句)。请用两种方式写出程序,并比较它们,由此体会条件表达式和条件语句的区别。 |
15 | 1)写一个包含两个整型参数的简单函数,它输出从第一个整数到第二个整数为止的整数序列,而后用这个函数输出一些序列。2)写另一个取3个参数m、n、k的函数,它输出m、m+k、m+2k、…,直至这个序列里最后一个不大于n的整数。 提示和讨论: 这两个函数都是最普通的循环程序,问题就是如何正确写出循环:
|
20 | 请查出银行1年定期存款的利率和5年定期存款的利率。假定现在存入100元钱,存款到期后立即将利息与本金一起再存入。请写程序计算按每次存1年和按照每次存5年,共存50年后两种存款方式的得款总额。对两种情况每隔5年输出一次当时的总金额。
提示和讨论:
|
23 | 请写一个程序,它打印出1到100之间被6或者7整除的所有的数;修改这个程序,使它打印出1到100之间只被6或者7之一整除的数(不包括同时被两者整除的那些数)。
提示和讨论: 最简单的方法是从1到100循环工作,程序的基本框架很容易写出,问题是如何写出打印动作的条件。 另一种可能是考虑6和7的倍数序列,正确合并它们后输出。这种方式困难得多,但也不妨想想。 |
本页由裘宗燕建立和维护。 这里的材料可自由用于个人学习和教学活动。其他使用必须得到裘宗燕书面许可
EMAIL:qzy@math.pku.edu.cn | 通讯地址:100871,北京大学数学学院信息科学系 |