实验5 函数程序设计.docVIP

  • 15
  • 0
  • 约1.33千字
  • 约 3页
  • 2017-05-12 发布于河南
  • 举报
实验5 函数程序设计

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

文档评论(0)

1亿VIP精品文档

相关文档