1. 实验目的
掌握基本函数与分支、循环语句
2. 实验内容、算法、流程图及主要符号说明
(1)用if语句写程序判断是否为闰年:
- 设计函数int runnian(int year),参数year为给定的整数,返回值为0(代表不是闰年)或1(代表是闰年)。
- 要求在main函数中用格式化输入函数输入一个代表年号的整数,调用runnian函数,根据返回值输出该年是否为闰年。
例如:输入:2000,输出:2000年是闰年。
输入:2015,输出:2015年不是闰年。
(2)简单分支程序与函数设计题:
- 设计函数double min(double x, double y, double z),参数x、y、z为给定的三个实数,求出其中的最小值并返回。
- 要求在main函数中用格式化输入函数输入三个实数,调用min函数得到三个数中的最小值,并将最小值输出。
(3)求一元二次方程ax2+bx+c=0的解,写程序完成以下功能:
- 设计函数void root(double a, double b, double c)在root中输出方程的解,如有一个实根则输出实根,如有两个实根则输出两个实根,如有两个虚根,则输出实部和虚部。并考虑a、b、c为零的情形,将函数写完备。
- 在main函数中用格式化输入函数输入方程的三个实系数,并调用root函数输出方程的解。
(4)写函数 double SegFun(double x)实现以下分段函数的计算,
并在主程序中调用该函数进行测试。
(5)写函数求100以内的正整数的立方和,并在主程序中进行测试。要求如下:
- 函数形式为:int SumCube(int limit),参数limit为给定的立方和函数的上界(limit=100),如果limit为非正整数,则返回值为0,否则,返回limit以内的所有正整数的立方和。
- 在main函数中用格式化输入函数输入一个数limit,调用SumCube函数,根据返回值输出求和结果。
(6)请写一个程序,它打印出1到100之间被6或7整除的所有数(封装成函数);在这个程序的基础上,写一个程序(生成一个新函数),使它打印出1到100之间只能被6或7之一整除的数(不包括同时被两者整除的那些数)。
(7)写函数void PrintNumers(int line),输出如下图形:
其中,line表示中间最长一行的行数,如上例中line为4。如果line<1则输出“输入参数错误”。
3.完整的程序清单
见资源”c语言程序设计实验6源代码“
4.输入数据及运行结果
- 输入“2000”结果输出“2000年是闰年”
- 输入13.7 54,8 2.1234结果输出“在13.7、 54,8和 2.1234这三个数中,最小值为2.1234。”
- 输入“2 4 2”,结果输出”x1=-1.00,x2=-1.00”
- 输入”1”,结果输出”1”
- 输入“100”结果输出“25502500”
- 结果输出“1到100中能被6和7整除的数:42 84 1到100中能被6或7之一整除的数为:6 7 12 14 18 21 24 28 30 35 36 48 49 54 56 60 63 66 70 72 77 78 90 91 96 98”
- 输入“4”,结果输出:
|
5.遇到的问题、解决方法和体会
(1)函数的定义、声明、调用。
(2)将原程序包装成函数。