1、韩山师范学院 C 语言程序设计第 1 页 共 3 页实验名称: 实验五 函数程序设计 日期:任课教师: 专业: 计算机科学与技术 学号: 姓名:【实验目的】1、 掌握函数的定义与调用2、 掌握函数参数的传递方式3、 领会函数的递归调用【实验内容】1、用递归法重做 6.10 题。 解题思路:知道了第九天吃剩下的桃子数 total(9)=1,而根据题意知计算前一天吃剩下的桃子数公式是(total(day+1)+1)*2.根据递推法计算前一天的桃子数,直到计算出 total(0),即刚摘桃子没吃时的数量,输出即可 流程图:int total(int day) int dayday =T9Ftotal
2、 =1 total=(total(day+1)+1)*2桃子总数=total(0)输出桃子总数 源程序:#include void main()int total(int day);int day=0;int c;c=total(day);printf(“桃子的总数是:%dn“,c);int total(int day)int t;if(day=9)t=1;elset=(total(day+1)+1)*2;return(t); 运行结果:韩山师范学院 C 语言程序设计第 2 页 共 3 页 学习心得(可选):2、编写一函数完成十进制整数到二进制数的转换,函数的原型为:void itob(int
3、 n,char s)并测试你编写的函数。 解题思路:输入一个数字利用 void itob(int n,char s)函数进行十进制数转换成二进制数的运算。再对函数调用,然后输出结果。 流程图:输入一个数T N=0 FT Nvoid main()void itob(int a,char str3000);int n;char str3000;printf(“please input a number:“);scanf(“%d“,itob(n,str);getch();void itob(int n,char str)int i,b;if(n=0)韩山师范学院 C 语言程序设计第 3 页 共 3 页printf(“%d“,n);elseif(n0;i+) if(n%2)stri=49;elsestri=48;n=n/2.0;for(i-=1;i=0;i-)printf(“%c“,stri); 运行结果: 学习心得(可选):