循环—函数—数组

Posted zhqiieng

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了循环—函数—数组相关的知识,希望对你有一定的参考价值。

循环

 

题目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.代码截图

题目3.7-17寻找250

1.本题PTA提交情况

 

2.设计思路

利用循环输入n个数,每输入一个数计数加一,直到这个数等于250,跳出循环,输出此时的计数。

 

3.本题提交过程中遇到问题及PTA提交列表情况说明

4.代码截图

二.同学代码结对互评

1.互评同学名字

 林萍

2.我的代码,同学的代码截图

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

(1).我的代码没有设置中间值计算a的变化,同学的设置了

(2)我的比较简洁,同学的细节体现的更加清楚,更能体现整个的思路。

(3).我更喜欢我的代码。

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

四、本周学习总结(2分)
1.你学会了什么?

学会了用循环来输入,输出,以及判定,使代码能够更加简洁。
2.本周的内容,你还不会什么?

多重循环还不能很好的掌握,容易使条件出错而使答案错误。

3.循环结构考试总结

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

13.以下程序的输出结果是

#include<stdio.h>

int main(){

int i=0,sum=0;

for( ; ;){

if(i==3||i==5) continue;

if(i==6) break;

i++;

sum+=i;

}

i=0时进入循环,不满足两个if条件,i变为1,sum变为1;再次进入循环,不满足两个if条件,i变为2,sum变为3;再次进入循环,不满足两个if条件,i变为3,sum变为6;再次进入循环,满足第一个if条件,执行continue语句,不再执行下面的语句,从此i恒等于3,进入死循环。

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

不是很满意,审题要认真,做过的题目不能错。

3.其他总结。

要多打代码,多读代码,光是看是不够的,打代码最重要的是日积月累。

函数

 

一.PTA实验作业

题目1.7-8求n以内最大的k个素数以及它们的和

1.本题PTA提交列表

2.设计思路

输入两个数n和k,利用循环从n依次减1判断是否为素数,当是的时候总和加上此素数,当素数的个数超过k个时,退出循环。

3.代码截图

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

当x满足条件时要输入continue语句,当x达到k个时,要使用break语句退出循环,否则答案不正确。

题目2.7.1求组合数

1.本题PTA提交列表

 

2.设计思路

输入m和n,分别计算m的阶层,n的阶层以及n-m的阶层,利用公式求出答案。

 

3.代码截图

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

没有注意到格式,漏了空格。

题目3.7-4验证哥德巴赫猜想

1.本题PTA提交列表

 

2.设计思路

输入一个n,利用循环和素数的判定求出小于n的两个素数使两数之和等于n,并满足为最小解。

 

3.代码截图

 

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

  二.截至本周日集的PTA最后排名.

三.同学代码结对互评

1.互评同学名称

 朱淳淳

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

 

 

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

(1).同学的用了函数,我的没有用

(2).同学的用了函数后更加简洁明了,我的更简单易懂

(3).我更喜欢同学的,用了函数

四.本周学习总结

1.你学会了什么

如何写代码判断素数

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

对于函数还不能很熟练的使用

数组

 

一、PTA实验作业

题目1:求最大值及下标
1. 本题PTA提交列表

 


2. 设计思路
利用数组定义n个数并利用循环输入,假设第一个数为最大值,再次利用循环将其后面的数与之比较,如果结果更大,则替换此最大值的值以及对应的下标。

 


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

出现段错误的原因是定义数组时忽略了[]内不能是一个未知数,而应该使用一个足够大的数字。

4.代码截图

题目2:

1. 本题PTA提交列表


2. 设计思路

利用数组定义n个数并利用循环输入,再利用循环把n个数的下标倒序排放,从而倒着输出这n个数。

 

 


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

出现多种错误的原因是一开始采用了%d 的方法输出结果,忽略了题目所要求的行末不能有空格。所以应该使用if语句条件控制空格的数量。

4.代码截图

 

题目3.7-14简化的插入排序

1. 本题PTA提交列表

 

2. 设计思路

利用数组定义n个数并利用循环输入,再输入一个x,将x 赋值给数组里的第n+1个数,然后利用排序法将其按照从小到大的顺序输出。

 


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

4.代码截图

 

二、同学代码结对互评

1.互评同学名字

林萍

2.我的代码,同学的代码截图

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

(1).我的代码是通过设立一个flag=1通过flag的值来判断,利用循环及if条件,如果上半部分数字全为0则flag的值不变,如果循环结束后flag的值仍不变,则为上三角矩阵。同学的代码是通过设立两个值分别代表上半部分所有数字以及为零的数量,如果相等则为上三角矩阵。

(2).我的代码使用了flag,很多代码都可以借用它判断,同学代码比较直白。

(3).我更喜欢我的代码,以后复杂的问题也能更好解决

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

 

 

四、本周学习总结
1.你学会了什么?

学会了用数组输入输出多个数字

学会了用设立一个flag的值是0还是1来判断是否满足条件。
2.本周的内容,你还不会什么?

还不能很好的使用二维数组来简化代码。

以上是关于循环—函数—数组的主要内容,如果未能解决你的问题,请参考以下文章

Js中数组的forEach()方法return无法退出循环

循环数组函数

使用 pine 脚本中的函数循环数组推送

php数组函数array_column:不用循环就能提取多维数组内容

Javascript:数组、For循环和函数

Part6 数组指针与字符串 6.2 数组作为函数的参数 6.3对象数组 6.4基于范围的for循环