您的位置:首页 > 编程语言 > C语言/C++

C语言博客作业--函数嵌套调用

2018-01-06 22:51 323 查看

一丶PTA实验作业

题目1:十进制转换二进制

(1).PTA提交列表



(2). 设计思路

定义函数 dectobin
如果(n==1或n==0)
输出n
否则
递归 dectobin(n/2)
输出n%2

(3).代码截图



(4).本题调试过程碰到问题及PTA提交列表情况说明

先后调用递归得出的结果会不同,这题对于了解递归原理很有帮助

1.2学生成绩管理系统

1.21画函数模块图,简要介绍函数功能



1.2.2 截图展示你的工程文件



1.2.3 函数代码部分截图

修改学生信息:



总分排序代码:





删除学生信息:



1.2.4调试结果展示



暂时还无法运行

调试碰到问题及解决办法。

二、截图本周题目集的PTA最后排名



三、阅读代码

猴子第一天摘下N个桃子,当时就吃了一半,还不过瘾,就又多吃了一个。第二天又将剩下的桃子吃掉一半,又多吃了一个。以后每天都吃前一天剩下的一半零一个。到第10天在想吃的时候就剩一个桃子了,问第一天共摘下来多少个桃子?并反向打印每天所剩桃子数。

#include<stdio.h>
#include<process.h>

int main()
{
/*打印最初的桃子数量*/
printf("%d\n", f(1));
system("pause");
return 0;
}

/*第day天剩下的桃子数*/
int f(int day)
{
int n;
if(day==10)
n=1;
else
{
/*第day天(左)和第day+1天(右)所剩桃子的关系式*/
n=(f(day+1)+1)*2;
/*由于递归规律,直接倒序打印*/
printf("第%d天所剩桃子%d个\n", day, n);
}
return n;
}

找出小猴吃桃数的规律,并将递归融入这个规律里求出每一天的吃桃数,第十天剩余的桃子数正好时递归的出口

四、本周学习总结

1.你学会了什么?

递归函数

即是该函数调用它本身自己,这种调用过程称为递归。

递归可以相当于循环,所以想结束递归,就必须有终止递归的条件测试部分,否则就会出现无限递归(即无限循环)。同时,这也是使用递归的难点。

优点:

1)简洁

2)适合解决阶乘、涉及相反顺序的编程问题

缺点

1)递归快速耗内存

2)不方便阅读和维护

宏定义

格式:

define 标识符 字符串

其中的标识符就是所谓的符号常量,也称为“宏名”。

预处理(预编译)工作也叫做宏展开:将宏名替换为字符串。

例:

define PI 3.1415926

把程序中出现的PI全部换成3.1415926

二级指针

类型名 **变量名

A(即B的地址)是指向指针的指针,称为二级指针,用于存放二级指针的变量称为二级指针变量.根据B的不同情况,二级指针又分为指向指针变量的指针和指向数组的指针.

2.学习体会

二维指针是指针的升级版,理解起来更困难,需要特别注意指针的指向问题

建一个项目还是相当有挑战的,还是得一步一步来吧

后面的学习对书本的知识点需要更清晰明了,最近解题时老是翻书本查阅,还是的多看看书
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: