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

一、PTA实验作业

题目1:6-4 十进制转换二进制

1. 本题PTA提交列表

2. 设计思路

定义函数dectobin,定义i=n/2
  如果传入的数为0,输出0,返回
  如果传入的数为1,输出1,返回
  如果传入的数不等于0,dectobin(n/2),如果n/2不等于0,输出n%2

3.代码截图

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

部分正确是因为一直没有想出如果传入的数为0该怎么解决,请教了一个学长

1.2 学生成绩管理系统

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

1.2.2 截图展示你的工程文件

1.2.3 函数代码部分截图








1.2.4 调试结果展示

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

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

三、阅读代码

角谷定理。输入一个自然数,若为偶数,则把它除以2,若为奇数,则把它乘以3加1。经过如此有限次运算后,总可以得到自然数值1。求经过多少次可得到自然数1。

#include <stdio.h>  
int f(int i)  
{  
    printf("%d ", i);  
    if (i == 1)return 1;  
    if (i %2==1)  
        return f(i * 3 + 1) + 1;  
    else  
        return f(i / 2) + 1;  
}  
int main()  
{  
    int i, w;  
    printf("请输入数字:");  
    scanf("%d", &i);  
    w = f(i);  
    printf("\nSTEP=%d\n", w);  
} 

对于每一个正整数,如果它是奇数,则对它乘3再加1,如果它是偶数,则对它除以2,如此循环,最终都能够得到1。 ,此代码验证角谷猜想

四、本周学习总结

1.介绍本周学习内容

宏的定义

#define 宏名 宏定义字符串

2.二级指针

类型名 **变量名
        int a=666;
        int *p=&a;
        int **pp=&p;

3.行指针

int  *(变量名)[长度]

4.链表

链表是一种物理存储单元上非连续、非顺序的存储结构,通过指针的连接顺序实现.
链表对于成员的插入删除十分方便,快捷。链表在访问成员时需要按节点顺序寻找,数组可以随机访问其中成员.

5.内存的分配和释放

在代码中,为了节约内存,可以动态生成数据.其利用的是malloc()函数。
利用free()函数可以及时释放动态分配得来的空间.
使用这两种函数前都需要调用库函数 #include<stdlib.h>

2.学习体会。

学习到后面,知识点越来越多,知识也有很多琐碎的点,理解也有点困难,需要经常看,还要多复习以前的。把不懂的地方打个标记,等上课的时候可以请教老师。理解书上的例子,搞懂每个语句的含义,用法。看完后尝试着不看例子自己编写程序,编完以后再跟书上进行比较,看自己的程序还有哪方面的不足,再进行改正。想要真正学好c语言光看书是不够的,一定要自己多动手

posted @ 2017-12-31 22:57  折原临也  阅读(404)  评论(1编辑  收藏  举报