循环 函数 数组

循环

## 一

题目一:打印九九口诀表

1、本题PTA提交列表

2、 设计思路

设计一个嵌套循环,第一个循环使第二个循环从1变到i,依次输出i*j,同时第二个循环使第一个循环从1变到9

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

调试过程碰到问题:语句没能对齐和形成三角形

调试过程

把j*i改成i*j  %d改成%-4d后正确

题目二:求交错序列前N项和

1、本题PTA提交列表

2、 设计思路

定义一个数学函数pow()来实现改变序列中元素的符号,定义sum来球和,调用while 语句来进行循环求和,当 i 不满足条件时,跳出循环。

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

调试过程碰到问题:总和sum 和d 的数据类型错误

调试过程

把d换为float型后正确

题目三:求平方根序列前N项和

1、本题PTA提交列表

2、 设计思路

定义一个数学函数sqrt()来求a的平方根,定义sum来求和,调用while 语句来进行循环求和,当 i 不满足条件时,跳出循环。

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

调试过程碰到问题:在dev上能运行但在pta上却不能运行。。

调试过程

严格按照pta上的格式输入后,如等号两边都需要大空格、b改为float型后答案正确

##二同学代码结对互评

我的代码

吴旷麟的代码

此题我们的代码不同之处在于我是用while循环,而旷麟是用for循环。

但他的代码比我的简洁明了,更少占储存空间

##三

【总结】

1 .你学会了什么?

(1)熟悉了简单循环以及嵌套循环的使用、、、

(2)学会了数学函数的使用:如1、平方根函数sqrt(x)  2、绝对值函数fabs(x)  3、冥函数pow(x,n)   4、指数函数exp(x)    5、以e为地的对数函数log(x)

(3) for语句和 while语句都是在循环前先判断条件,而   do-while语句是先执行循环体,后判断循环条件

(4)break语句是强制结束循环,而continue语句是跳过后面的语句接续循环

2 .还不会什么?

pta不会做的题:7-35 7-38 7-39  7-10 7-36 7-40 7-8 7-9 7-10 7-11 7-34 7-20

3 . 考试总结:

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

(1)7-39 出生年;与室友讨论,一起思考,网上查阅;

(2)7-10 打印沙漏; 思考后多次不对,并与室友对比代码,然后发现了自己的错误

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

考试结果不太好,不满意

改进:多敲代码,多思考,多看书,掌握基础知识

4 .其他总结:课本的基础知识掌握还不够

函数

## 一

题目一:7-3 求幂之和(15 分)本题要求编写程序,计算sum=2?1??+2?2??+2?3??+?+2?n??。可以调用pow函数求幂。

1、本题PTA提交列表

2、 设计思路

调用pow函数求幂,定义sum依次求和、

流程图

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

调试过程碰到问题:无

调试过程

题目二:7-5 近似求PI(15 分)

本题要求编写程序,根据下式求π的近似值,直到最后一项小于给定精度eps。

?2??π??=1+?3??1!??+?3×5??2!??+?3×5×7??3!??+?+?3×5×?×(2×i+1)??i!??+?

1、本题PTA提交列表

2、 设计思路

自定义三个函数,运用函数嵌套实现求出π的近似值,应用循环结构求最后一项大小,

直到最后一项小于给定精度eps。同时求出各元素累加的值

流程图:

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

调试过程碰到问题:1、如何运用函数的嵌套使用? 2、开始循环逻辑不对,函数定义思路不清晰

3、第一次提交   输出格式错误,将"%lf"改为“%.5”则正确。

调试过程

题目三:7-1 求组合数(15 分)

本题要求编写程序,根据公式C?n?m??=?m!(n?m)!??n!??算出从n个不同元素中取出m个元素(m≤n)的组合数。

1、本题PTA提交列表

2、 设计思路

因为组合数由n!/m!*(n-m)!构成,,定义一个阶乘函数fact(),分别求出n!  ,  m!  , (n-m)!  ,然后在用result统计结果

流程图:

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

调试过程碰到问题:一开始错把结果result定义为了int 型、自定义函数的声明后面必须要有分号

调试过程

###二  :同学代码结对互评

吴旷麟的代码:

我的代码

我的代码的思路和旷麟的代码的思路基本一样,但是旷麟的代码更加精短,更加有含金量,一目了然不会让人纠结,而我的代码步伐较多,容易让人混淆

###三 【总结】

1 .你学会了什么?

(1)学会了运用函数之间的嵌套使用。,如7-5 近似求PI

(2)局部变量和全局变量的使用,一般把全局变量定义在程序的最前面,局部变量一般定义在函数或复合语句的开始处

(3)void函数是不返回结果的函数

(4)学会了函数的定义和调用    自定义函数的声明,其后要加分号

2 .pta不会做的题:7-2 7-9  7-7

3 . 考试总结:

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

(1)7-11;和同学一起讨论,互相检查代码,网上查阅;

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

考试结果不太好,不满意

改进:多敲代码,多思考;勤于问,谦于闻

4 .其他总结:课本的基础知识掌握还不够,知识面宅

###四

本周题目集的PTA最后排名

数组

##一

题目一:7-4 查找整数(10 分)

本题要求从输入的N个整数中查找给定的X。如果找到,输出X的位置(从0开始数);如果没有找到,输出“Not Found”。

1. 本题PTA提交列表

2. 设计思路

定义一个数组a[i]将输入的N个数有序的储存起来,将i<N作为循环条件,依次调用a[i]与X比较,若找到与X相等的a[i], 并输出i,若没找到并输出“Not Found"...

流程图:

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

调试过程:

【错误】:在没输入N之前,a[N]语句在C语言为不合法语句,错把英文分号大写成中文分号。。

经认真检查、让室友寻找以后  修改  正确

题目二:选择法排序(20 分)

本题要求将给定的n个整数从大到小排序后输出。

1. 本题PTA提交列表:

2. 设计思路

在未排序的n个数中找到最大值,将它与a[0]交换;再在剩下的n-1个数中找到最大值,并与a[1]交换、、、依次类推

流程图

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

调试过程:

【错误】:1、不细心 ,没有按pta的格式要求,pta要求在一行中输出从大到小有序的数列,相邻数字间有一个空格,行末不得有多余空格。

改正后提交  正确

题目三:方阵循环右移(20 分)

本题要求编写程序,将给定n×n方阵中的每个元素循环向右移m个位置,即将第0、1、?、n?1列变换为第n?m、n?m+1、?、n?1、0、1、?、n?m?1列。

1. 本题PTA提交列表

2. 设计思路

定义一个二维数组A[n][n],运用三个嵌套循环,依次将给定n×n方阵中的每个元素循环向右移m个位置。。

流程图

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

【错误】1、一开始没注意pta的要求为:每行n个整数,每个整数后输出一个空格,并且要换行

2‘、一开始思路不清晰 分析不透彻 导致循环嵌套部分错误

本题代码:

##二同学代码结对互评

陈健的代码

我的代码

我和陈健的代码不同之处在于陈建是用函数写的,而我只用了数组

我觉得这个题我自己的比较好,会更加清晰;

##三

1 .你学会了什么?

(1)利用数组来调用多个输入值,以及二维数组的使用

(2)更加熟悉了循环的使用

(3)数组名是一个地址常量,存放数组内存空间的首地址

(4)数组下标从0开始,下标不能越界

(5)字符串是由有效字符和字符串结束符‘\0‘组成

2 .还不会什么?

pta不会做的题:7-5 7-7 7-8  7-9  7-15 7-16  7-13 7-23 7-24 7-25 7-29 30

3 . 考试总结:

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

(1)正整数A+B;问同学,网上查阅;

(2)说反话-加强版  问同学,知道了大致方法

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

考试结果不太好,不满意

改进:多敲代码,思考

4 .其他总结:课本的基础知识掌握还不够,写程序时自己会没思路

写程序时会思考很久但还是不知从何下手,

本周题目集的PTA最后排名

原文地址:https://www.cnblogs.com/twzh123456/p/8150881.html

时间: 2024-10-06 23:06:51

循环 函数 数组的相关文章

循环—函数—数组

题目1.7-7.计算阶层和 1.本题PTA提交列表 2.设计思路 输入n,利用循环求出1到n的阶层并将其求和 3.本题调试过程中遇到问题 本题只需要一个循环. 4.代码截图 题目2.7-5找出最小值 1.本题PTA提交列表 2.设计思路 输入n个数,假设第一个数为最小值,利用循环将剩下的数依次与第一个比较,如果结果更小则替换最小值. 3.本题调试过程中遇到问题及PTA提交列表情况说明 最小值为0的答案错误,是因为定义了两个变量x和y,而y从1开始循环满足不小最小值为0的情况. 4.代码截图 题目

Java--分支语句、循环、数组、控制台输入语句、常用数学函数

**-----本章节-----** 1.分支语句 2.循环 3.数组 4.控制台输入语句 5.部分常用的数学函数 ============================================================== 一分支语句 1.概念 (1)分支语句又称条件语句条件语句使部分程序可根据某些表达式的值被有选择地执行. (2)Java编程语言支持双路 if和多路 switch 分支语句. ===========================================

JAVA 蹒跚自学之 第六日 函数 数组

定义函数的格式    修饰符  返回值类型  函数名  (参数类型  形式参数1,参数类型  形式参数2,----------.) (代码块      return }   如何定义一个函数  1  明确要定义的函数的返回值类型   2   明确 要定义的函数的参数列表 3  明确要定义函数的功能,不该函数完成的功能不要加到函数里面,切记,切记.   例如 1 定义一个函数 完成两个数的求和            public  static  int  getsum(int a ,int b)

【Python】Windows版本的Python开发环境的配置,Helloworld,Python中文问题,输入输出、条件、循环、数组、类

Python这东西似乎很有用的样子,但不知道为何一直火不起来, 有可能是因为这东西太难读~读作什么,派神.英语不好的人,第一眼看上去就懵了,还经常拼错,呵呵! 不过怎么说都好关键是要会. 一.Python开发环境的配置 1.首先打开Python的官网https://www.python.org/downloads/下载(点击打开链接)Python的开发环境.这东西是基础的基础,相当于JDK在Java的地位.值得注意的是,Python这小子又不老实了,又开始把自身的语法改到面目全非,在强推Pyth

JavaScript 中 for in 循环和数组的问题

本文由 伯乐在线 - ElvisKang 翻译,进林 校稿.未经许可,禁止转载!英文出处:adripofjavascript.com.欢迎加入翻译小组. JavaScript的for…in循环用于迭代访问对象中的可枚举(enumerable)属性: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 var tMinus = {     two: "Two",     one: "One",     zero: "Blast

AWK中for循环调用数组解释

以前对于awk中的for循环调用数组一直不是很清晰,通过这个例子你将会对这种方法非常明白. #!/bin/sh echo"" | awk ' BEGIN { a[1]="123" a[2]="456" a[3]="789" } END{ for(i in a) { print i,a[i] } }' 结果:

循环 函数 软件包 【中】

循环 函数 软件包  [中] 创建无限循环 while true; do 循环体 done until false; do 循环体 Done 特殊用法 while循环的特殊用法(遍历文件的每一行): while read line; do 循环体 done < /PATH/FROM/SOMEFILE 依次读取/PATH/FROM/SOMEFILE文件中的每一行,且将 行赋值给变量line 示例 [[email protected] bin]# bash wenben.sh #! # read -

约瑟夫问题 算法很简单保证每隔人都能看懂用数组实现 利用循环删除数组中的元素

#include<iostream> using namespace std; const int size = 1000; void ArrDel() { int arr[size]; //循环结束标志,一直循环到数组中只剩下最后一个元素结束 int currentNum = size; int count = 0; for (int k = 0; k < size; k++) { arr[k] = k; } //currentNum==1表示数组中只剩下最后一个元素 是循环结束的标志

使用sort加个简单的算法,不循环整个数组而删除数组内的某些元素。

昨天遇到一个这样的场景: 有一个不分页的商品列表,里面可能有上千条数据(而且可能是静态数据)甚至更多,这里有个删除功能,需要我们删除其中的一些商品. 这时我的第一反应就是,数据过多不能循环整个数组,只有获取到它们的索引,然后循环得到的索引,使用数组的splice()方法对它进行删除.并且我这样做了,但是发现了一个致命的bug. bug的原因是这样的: 我先得到了一组索引(就是我所需要删除的商品的索引),然后循环了这组索引,在每次循环的时候我执行了splie()方法,但是由于splice方法执行后