C语言博客作业--函数 陈张鑫
一、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语言博客作业--函数 陈张鑫的更多相关文章
- C语言博客作业——函数
一.PTA实验作业 题目1:6-6 使用函数输出水仙花数 1.本题PTA提交列表 2. 设计思路 int narcissistic( int number ) //函数定义 1.定义整数型变量a.i分 ...
- C语言博客作业--函数嵌套调用
一.实验作业(6分) 本周作业要求: 选一题PTA题目介绍. 学习工程文件应用,设计实现学生成绩管理系统. 学生成绩管理系统要求 设计一个菜单驱动的学生成绩管理程序,管理n个学生m门考试科目成绩,实现 ...
- C语言博客作业—函数
一.PTA实验作业 题目1:使用函数输出水仙花数 1. 本题PTA提交列表 2. 设计思路 (1)首先定义函数narcissistic(number)判断number是否为水仙花数: (2)narc用 ...
- C语言博客作业—函数嵌套调用
一.实验作业 1.1 PTA题目:递归法对任意10个数据按降序排序 1.1.1设计思路 void sort(int a[],int n) { 定义整型循环变量i,中间变量temp,最小值min: 令m ...
- C语言博客作业--函数
一.PTA实验作业 题目1 (6-7) (1).本题PTA提交列表 (2)设计思路 设计第一个函数判断是否完数int factorsum( int number ) 定义sum.i:sum初始化归0, ...
- C语言博客作业06——结构体&文件
C语言博客作业06--结构体&文件 1.本章学习总结 1.1思维导图 1.2.本章学习体会 在本周的学习中,我们学习了关于结构体和文件的内容.结构体的本身并不难,但以结构体为基础的链表还是让我 ...
- C语言博客作业6---结构体&文件
C语言博客作业6---结构体&文件 1.本章学习总结(2分) 1.1思维导图 请以思维导图总结本周的学习内容.如下图所示: 1.2.学习体会 描述本周学习感受,也可以在这里提出你不理解地方.对 ...
- C语言博客作业5--指针
C语言博客作业5--指针 1.本章学习总结(2分) 1.1思维导图 请以思维导图总结本周的学习内容,如下图所示: 1.2本章学习体会及代码量学习体会 1.2.1学习体会 描述本周学习感受,也可以在这里 ...
- C语言博客作业3--函数
C语言博客作业3--函数 1.本章学习总结 1.1思维导图 请以思维导图总结本周的学习内容,如下图所示: 1.2本章学习体会及代码量学习体会 1.2.1学习体会 描述本周学习感受,也可以在这里提出你不 ...
随机推荐
- idea好用插件(一)
代码规范插件 Alibaba Java Coding Guidelines 安装后 可以在文件.文件夹邮件,显示编码规约扫描,点击后显示 可以通过双击定位问题代码,对某些问题可以进行快速的修复 比如: ...
- Codeforces Round #424 Div2 E. Cards Sorting
我只能说真的看不懂题解的做法 我的做法就是线段树维护,毕竟每个数的顺序不变嘛 那么单点维护 区间剩余卡片和最小值 每次知道最小值之后,怎么知道需要修改的位置呢 直接从每种数维护的set找到现在需要修改 ...
- Unity3d开发中与oc交互之类型转换
对于非科班出身的程序来说,在没有学过C和OC的情况,用unity开发iOS相关的功能,是非常痛苦的.简单写一下自己遇到的,并且没有百度到的坑. 1.C#给OC传递字典 一般流程是,C#调用C,C调用O ...
- 常用的freemark语法(三)
一,符号的意义 1.0,单问号 ?后面要加关键字,例如:<#if object?exists>object对象不为空</#if> <#if str??>${str? ...
- zookeeper选举
什么时候开始进行选举 1.服务器初始化启动的时候2.服务器运行期间连接不上leader的时候 初始化选举过程 进行leader选举至少需要两台服务器,我们这里举例为5台服务器(1,2,3,4,5)1. ...
- Java反射机制应用实践
反射基础 在应用反射机制之前,首先我们先来看一下如何获取一个对象对应的反射类Class,在Java中我们有三种方法可以获取一个对象的反射类. 通过getClass方法 在Java中,每一个Object ...
- Linux安装jdk1.8和配置环境变量
每次感觉配这个都很简单,但每次都要查一下,毕竟配错一点 后面都比较麻烦,记录一下,方便以后查看. linux 下安装jdk和windows下的安装是一样的,之前在windows安装的时候是先下载压缩包 ...
- [NOIP2017] 逛公园
[NOIP2017] 逛公园 题目大意: 给定一张图,询问长度 不超过1到n的最短路长度加k 的1到n的路径 有多少条. 数据范围: 点数\(n \le 10^5\) ,边数\(m \le 2*10^ ...
- Redis之String
一.Redis之String简介 1. String是redis最基本的数据类型,一个key对应一个value. 2. String是二进制安全的,可以包含任何数据,例如图片或序列化的对象. 3. S ...
- android使用JSON数据和服务器进行交互
//点击按钮发送反馈信息给服务端,成功则进入优惠券界面 Button upload = (Button) findViewById(R.id.upload); final String finalLa ...