一、PTA实验作业

题目1:6-3 使用函数判断完全平方数

1. 本题PTA提交列表

2. 设计思路

  • 1.定义int IsSquare( int n )函数
  • 2.判断(sqrt(n)是否为整数
  • 3.,sqrt(n)-(int) sqrt(n) ==0若是则返回1是否则返回0

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

遇到问题

1.不知道如何去判断一个数是否为整数,后来想到用int强行定义为整数在再用原来的

减去这个值来判断,十分巧妙。

题目2:6-6 使用函数输出水仙花数

1. 本题PTA提交列表

2. 设计思路

  • 1.定义int narcissistic( int number )函数并定义i,j,q=0,y=0,x,d=1,c,bit,e 9 个整数变量
  • 2.x=number;e=number
  • 3.在循环中将number重复除以10,得出number的位数并存在q中
  • 4.进入while循环while(x),bit=x%10得出number的个位数的值
  • 5.进入嵌套循环for(j=1;j<=q;j++) d*=bit,求出number各位数的q次方的值
  • 6.y=d+y;d=1;x=x/10; 判断x是否等于0,若是退出循环,否则执行4
  • 7.判断(y==e)是否为真若是返回1;否则返回0;
  • 8.定义void PrintN( int m, int n )函数 定义i一个整数变量
  • 9.进入循环for(i=m+1;i<n;i++) 判断(narcissistic(i))是否为真
  • 10.若是输出i的值并换行

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

遇到问题

1.首先是如何判断输入的数的位数,后来想到用number/10,然后定义一个q来计数

2.当计算出输入的数的各位数的和之后就,来比较原来的输入的值的大小时,发现

number的值已经发生改变,无法进行判断所以必须定义一个变量来存储原来number

的值,再用来判断。

3.第二个函数在一个小细节就是循环条件中i=m+没有注意到,因为m已经判断过所以

不必在进入循环。

题目3:7-1 求组合数

1. 本题PTA提交列表

2. 设计思路

  • 1.函数声明 double fact(int n);
  • 2.定义m n c三个整数变量
  • 3.输入m n的值
  • 4.c=fact(n)/(fact(m)*fact(n-m));
  • 5.输出c的值
  • 6.定义函数double fact(int n)
  • 7.定义i整数变量及ans=1的double型变量
  • 8.进入循环for(i=1;i<=n;i++)
  • 9.ans*=i;
  • 10.判断i是否小于等于n,若是执行8否则跳出循环

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

遇到问题

1.这题设计思路比较简单就是定义变量时不懂为什么要用double来定义

,后来写出程序后答案总是错误,经过舍友提醒知道应为int的数长度比

较短,且这个程序中的数较大所以不能用int。

二、同学代码结对互评

1.同学互评照片。

2.我的代码、互评同学代码截图

我的代码

徐宏伟的代码

3.我和同学代码不同在哪里?有哪些各自优势?你更喜欢哪种代码风格?如果同学代码有错的也请帮忙指出来哪里出问题。

首先不同之处是判断输入的数的位数,我用的是for循环,而宏伟用的是do while ,我觉的宏伟的用的好.因为当输入的数为0

时我的做法就无法做出位数为1的情况而他的可以,虽然在这题中我的做法可以但是遇到别的题就不一定了、

还有就是我在计算各位数的和时用的是while(x)而他是用for(i=1;i<=count;i++)用判断出来的位数来限制执行的次数,而我直

接用x/=10,我觉得我的方法好因为这样部不必使用上个语句,且while的语法也较简洁。

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

四、本周学习总结

1.你学会了什么?

1.1 C语言哪些数据类型?

整型 short,int,long ,unsigned long ,short, unsigned short

实型 float,double

字符型 char

1.2 字符型数据需要注意地方?

1.不仅可以写成字符常量的形式,也可以用相应的ASSCII码表示,即可用整数表示。

2.可以参加运算,想整数型变量一样

3.在使用字符型变量时记住加上单引号

1.3 自增自减运算符?

.注意符号在前在后的问题,在前在后变量均变化,但是在前的话表达式变化,在后不变

1.4 运算符优先级?

优先级不同则按优先级从高到低计算,如果操作数两侧的运算符优先级相同,则按结合方向决定计算顺序

运算符优先级从高到低排列:逻辑运算符、算术运算符、关系运算符、逻辑运算符、条件表达式、赋值运算符、逗号运算符

1.5 C语言哪些表达式?课堂派哪里做错,做错的请在这里分析原因?

已知字母A的ASCII码为十进制数65,且ch为字符型变量,则执行语句ch='A'+'6'-'3';后,ch中的值为__

A、D

B、68

C、C

D、不确定

我选A答案是B 原因:我以为计算起来也要是字符所以选A

若x为浮点型,则表达式x=10/4为( )

A、2.5

B、2.0

C、2

D、3

我选A 答案是B 因为计算出来是2 因为10/4是整形我误以为是直接得出2.5

1.6 其他内容?

2.本周的内容,你还不会什么?

这周内容基本掌握了 不会就是数据类型掌握不好,位运算不太了解 ,函数的语法基本可以掌握,就是2

进制方面还要继续努力。

3.循环结构考试总结

1.哪题做错了,怎么改?

1.第四第五题我做错了

2.原因:第四题是我在看题目时看到18在32位机器中表达为11000,而我用2进制算了下不对呀是10010,

我当时就蒙了,(老师是不是题目出错了呀)直接跳过跳到第五题,我也思考了一会,做了出来 ,但是就

是一个细节最后的一个条件一直过不了,我用了好几种方法还是一样。一直都是21分无法得到25,就只因

为一个小细节。导致想了半节课,第四题也忘记做了

3.改正:第四题回宿舍后了解题目后直接就一遍做了出来,第五题我是会宿舍后于舍友讨论才得出的答案

因为舍友一样也是这里的问题、

2.考试结果满意么,怎么改进?

不满意,因为这些题目都是做过的,但是在考试中却不能完美的做出。

我觉以后做题还是要继续努力,对于一些小问题要重视,特别是题目也要学会审题理解。对于这次考试中遇到的问题继续改正

加大题目量,加强寻找失误的能力,调试程序的能力。

3其他总结。

C语言博客作业--函数 陈张鑫的更多相关文章

  1. C语言博客作业——函数

    一.PTA实验作业 题目1:6-6 使用函数输出水仙花数 1.本题PTA提交列表 2. 设计思路 int narcissistic( int number ) //函数定义 1.定义整数型变量a.i分 ...

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

    一.实验作业(6分) 本周作业要求: 选一题PTA题目介绍. 学习工程文件应用,设计实现学生成绩管理系统. 学生成绩管理系统要求 设计一个菜单驱动的学生成绩管理程序,管理n个学生m门考试科目成绩,实现 ...

  3. C语言博客作业—函数

    一.PTA实验作业 题目1:使用函数输出水仙花数 1. 本题PTA提交列表 2. 设计思路 (1)首先定义函数narcissistic(number)判断number是否为水仙花数: (2)narc用 ...

  4. C语言博客作业—函数嵌套调用

    一.实验作业 1.1 PTA题目:递归法对任意10个数据按降序排序 1.1.1设计思路 void sort(int a[],int n) { 定义整型循环变量i,中间变量temp,最小值min: 令m ...

  5. C语言博客作业--函数

    一.PTA实验作业 题目1 (6-7) (1).本题PTA提交列表 (2)设计思路 设计第一个函数判断是否完数int factorsum( int number ) 定义sum.i:sum初始化归0, ...

  6. C语言博客作业06——结构体&文件

    C语言博客作业06--结构体&文件 1.本章学习总结 1.1思维导图 1.2.本章学习体会 在本周的学习中,我们学习了关于结构体和文件的内容.结构体的本身并不难,但以结构体为基础的链表还是让我 ...

  7. C语言博客作业6---结构体&文件

    C语言博客作业6---结构体&文件 1.本章学习总结(2分) 1.1思维导图 请以思维导图总结本周的学习内容.如下图所示: 1.2.学习体会 描述本周学习感受,也可以在这里提出你不理解地方.对 ...

  8. C语言博客作业5--指针

    C语言博客作业5--指针 1.本章学习总结(2分) 1.1思维导图 请以思维导图总结本周的学习内容,如下图所示: 1.2本章学习体会及代码量学习体会 1.2.1学习体会 描述本周学习感受,也可以在这里 ...

  9. C语言博客作业3--函数

    C语言博客作业3--函数 1.本章学习总结 1.1思维导图 请以思维导图总结本周的学习内容,如下图所示: 1.2本章学习体会及代码量学习体会 1.2.1学习体会 描述本周学习感受,也可以在这里提出你不 ...

随机推荐

  1. Javascript设计模式(1)

    本文是学习了<JavaScript设计模式>(谢廷晟 译)做的学习笔记 一.JavaScript的灵活性 1. 普通 functon function startAnimation() { ...

  2. [SHOI2012]随机树

    [SHOI2012]随机树 题目大意( 网址戳我! ) 随机树是一颗完全二叉树,初始状态下只有一个节点. 随机树的生成如下:每次随机选择一个叶子节点,扩展出两个儿子. 现在给定一个正整数\(n\)(\ ...

  3. [BZOJ4872][六省联考2017]分手是祝愿

    BZOJ Luogu sol 首先发现肯定有解,又因为每个位置至多操作一次,所以最优解一定是在\([0,n]\)之间 有一种可以在\(O(\sum_{i=1}^{n}\lfloor\frac{n}{i ...

  4. 近期安卓与IOS招聘面试有感

    版权声明:本文出自汪磊的博客,转载请务必注明出处. 一.你总是想一步登天,却不知道路是一步步走出来的 大概是放年假前一个月开始招聘吧,陆陆续续到目前为止安卓面试10几个,IOS面试了15个左右,本以为 ...

  5. golang 互斥锁和读写锁

    golang 互斥锁和读写锁 golang中sync包实现了两种锁Mutex(互斥锁)和RWMutex(读写锁),其中RWMutex是基于Mutex实现的,只读锁的实现使用类似引用计数器的功能. ty ...

  6. MyBatis的三层级联和二层缓存

           我们这里说的三层级联和二级缓存其实也是MyBatis映射器的知识点,只是因为比较难理解,所以单独拿出来讲解,下面是三层级联的内容:        我们知道,在数据库中包含着一对一,一对多 ...

  7. jsp学习第一弹

    早期动态网站开发技术主要使用cgi技术,cgi的基本原理是,将浏览器提交至web服务器的数据通过环境变量传递给其他外部程序,经外部程序处理后,再由cgi把处理结果传送给web服务器,最后由web服务器 ...

  8. 用MATLAB结合四种方法搜寻罗马尼亚度假问题

    选修了cs的AI课,开始有点不适应,只能用matlab硬着头皮上了,不过matlab代码全网仅此一份,倒有点小自豪. 一.练习题目 分别用宽度优先.深度优先.贪婪算法和 A*算法求解"罗马利 ...

  9. 用firefox 31配合KeePass密码管理器实现web帐号密码自动填写登录

    原文:http://bbs.kafan.cn/thread-1754676-1-1.html KeePass的优势:1.这是一款完全开源的密码管理器2.很多人都使用lastpass来保存密码,而这种严 ...

  10. leaflet渲染mapbox gl的矢量数据

    准备条件 1.mapbox-gl.js mapbox-gl.css 2.leaflet-mapbox-gl.js https://github.com/mapbox/mapbox-gl-leaflet ...