zoukankan      html  css  js  c++  java
  • C语言博客作业03函数

    1.本章学习总结

    1.1 思维导图

    1.2 本章学习体会及代码量学习体会

    1.2.1 学习体会

    通过了本周的学习,更加深入地了解到了函数的用法,也感受到了C语言的魅力。在不断的敲代码过程中,逐渐训练自己的逻辑能力。函数可以高效地覆盖重复代码,使代码看起来更简单有效!
    

    1.2.2 代码累计

    2.PTA总分

    2.1截图PTA中函数题目集的排名得分

    2.2 我的总分:

    2018-c-函数 : 145分
    总分:145分
    

    3.PTA实验作业

    函数题目:因为任何一个不小于6的偶数均可表示为两个奇素数之和,用函数写出来。

    3.1.1 算法分析

    int prime( int p )                                                                                      指出函数prime();
    	if(p == 1) return 0;                                                                          1不是素数;
    	else if(p == 2) return 1;                                                                 2是素数;
    for(int i = 2;i <= p / 2;i ++) if(p % i == 0)   return 0;	return 1;           对大于二的数字进行判断是否为素数:是就返回1,不是就返回0;
    void Goldbach( int n )                                                                            指出函数Goldbach();
    for(num = 1;num < n;num ++)		if(prime(num))                        开始循环使用之前定义的判断素数函数进行寻找素数num(由小到大);
     			int number = n - num;                                                    找到另一个数字number;
     			if(prime(number))                                                           判断number是也是素数;
     				printf("%d=%d+%d",n,num,number);                 如果符合,那么输出结果并跳出循环。
     				return ;
    end for;
    

    3.1.2 代码截图

    3.1.3 测试数据

    3.1.4 PTA提交列表及说明

    由于我是先在Decv++上做的所以我的提交列表不多。
    Q1:如何在函数内部调用函数
    A1:跟我们大函数一样,直接调用就ok。
    

    4.大作业

    4.1.函数关系图

    4.2.函数功能介绍

    所有函数集合展示图:

    1.函数:输出语句

    2.函数:界面生成

    3.函数:选择难度等级的函数

    4.函数:等级题目生成函数



    4.3 运行结果截图




    看来886这个数字,我的电脑也很喜欢啊!哈哈

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

    Q1:四则运算中的除法运算,除数为零?
    A1:用if判断语句进行排除。
    Q2:在不同难度下的代码中出现了太多重复。
    A2:使用函数进行覆盖,避免多次重复,从刚开始的四百多行代码删减到了两百多行。
    Q3:在随机数的选择上,无法正常过编译?
    A3:这个就尴尬了,在计算时间上定义了一个计算时间差的变量名为time,但是还有一个随时间变化而变化的随机数srand(time(NULL)),这就使得编译始终过不了,后来在同学(大佬)的指点下改变了变量名终得成功编译,这让我深刻的认识到定义名称时一定要注意细节,尽可能地使用驼峰命名法。
    

    4.5 大作业总结

    这个代码我写了一星期多,刚开始不是很熟练地使用函数来覆盖重复代码,后来在同学的帮助下慢慢的把重复代码都给简化了!
    刚开始的时候,**随机数不会用**,+-*/的选择上就出现了问题,后来看了一下上次课堂派的题目,找到了灵感,一点一点地摸索出来了。
    回想刚开始的四五百行代码,自己都看着累,以后写代码一定要先理清思路,找到重复点,调用适当函数进行简化代码,使代码看起来跟简洁!
    
  • 相关阅读:
    两个类重复属性值复制
    IIS请求筛选模块被配置为拒绝超过请求内容长度的请求
    System.Data.OracleClient 需要 Oracle 客户端软件 8.1.7 或更高版本问题
    Oracle 查询表中字段里数据是否有重复
    JS 中如何将<br/> 替换成 /n
    JS 验证数组中是否包含重复元素
    [C#] 使用NPOI将Datatable保存到Excel
    [C#] 将 List 转 DataTable
    [C#] 图文解说调用WebServer实例
    bzoj 3489: A simple rmq problem
  • 原文地址:https://www.cnblogs.com/yue7521/p/9937823.html
Copyright © 2011-2022 走看看