• 函数 数组 循环


    一,PTA实验作业

    题目1

    7-1 求组合数(15 分)

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

    建议定义和调用函数fact(n)计算n!,其中n的类型是int,函数类型是double

    1.提交列表

    2.设计思路

    将所需元素输入 ,再调用函数fact()即可。

    3.调试过程

    当m==n/2时,结果错误。没注意定义成了int型   将其改为double类型即可

    题目2

    7-3 求幂之和(15 分)

    本题要求编写程序,计算sum=21​​+22​​+23​​++2n​​。可以调用pow函数求幂。

    1.提交列表

    2.设计思路

    调用pow函数,再进行累加求和。

    3.调试过程

    第一次因为在输出时忘记加空格,所以导致格式错误。第二次加上空格就正确了。

    题目三

    7-10 判断素数(10 分)

    本题的目标很简单,就是判断一个给定的正整数是否素数。

    1.提交列表

    2.设计思路

    3.调试过程

    一遍过。

    二,同学代码结对互评。

    题目

    7-8 求n以内最大的k个素数以及它们的和(20 分)

    本题要求计算并输出不超过n的最大的k个素数以及它们的和。

    许日祯同学的代码

    我的代码

    啊,我的代码真是长到自己都不知道怎么打出来的,无可厚非,小日同学的代码更简短更清晰,完美胜出。但是,我会用数组啊,不过貌似在这题上不太适合。以后会多加注意审题,理清思路。

    三,PTA排名

    四,本周学习总结

    函数是一个完成特定工作的独立程序模块,由C语言系统提供定义,编程时只要直接调用即可,不同函数完成的是不同的功能,但它们都有一个共同点----实现一个计算,并可以得到一个明确的计算结果。函数首部后面不能加分号,他和函数体一起构成完整的函数定义。实参和形参一一对应,数量应相同,顺序应一致。return语句只能返回一个值。函数声明是一条C语句,而函数定义时的函数部首不是语句,后面不能跟分号。

    这次PTA的第六题还是不会。

    一,PTA实验作业

    题目1

    7-2 求最大值及其下标(20 分)

    本题要求编写程序,找出给定的n个数中的最大值及其对应的最小下标(下标从0开始)。

    1.提交列表

    2.设计思路

    把数字存入数组,再首尾交换

    3,调试过程

    一遍过。

    题目2

    7-6 冒泡法排序(20 分)

    N个整数按从小到大排序的冒泡排序法是这样工作的:从头到尾比较相邻两个元素,如果前面的元素大于其紧随的后面元素,则交换它们。通过一遍扫描,则最后一个元素必定是最大的元素。然后用同样的方法对前N1个元素进行第二遍扫描。依此类推,最后只需处理两个元素,就完成了对N个数的排序。

    本题要求对任意给定的K(<N),输出扫描完第K遍后的中间结果数列。

    1.提交列表

    2.设计思路

    利用数组存入数字,再循环判断,依次比较,再输出。

    3,调试过程

    第一次编译错误是由于语句结束忘记加分号,第二次部分正确,,,至今原因不明,,,啊,难过

    题目3

    7-4 查找整数(10 分)

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

    1.提交列表

    2.设计思路

    定义一个数组a,将整数存入数组中,再给定数字b,将数组与数字进行比较看是否相等,循环至结束

    3.调试过程

    一遍过。

    二,同学代码互评。

    题目

    7-13 找鞍点(20 分)

    一个矩阵元素的“鞍点”是指该位置上的元素值在该行上最大、在该列上最小。

    本题要求编写程序,求一个给定的n阶方阵的鞍点。

    我的代码

    雷慧同学的代码

    啊,没有对比就没有伤害,看看雷慧妹子的代码,比我的短,思路也清晰,我的没有将其汇总,比较凌乱导致部分正确,头脑也好乱,嗯,的确收获很多打代码的的技能,下次打代码前一定要画流程图。

    三,PTA排名

    四,学习总结

    不能分配常量大小为0的数组。
    访问数组要用下标访问,且下标要从0开始。
    数组在内存中连续存放。
    数组的数组名相当于数组首元素的地址。
    sizeof(数组名),数组名表示整个数组,求的是整个数组的大小;&数组名,数组名表示整个数组,取出来的是数组的地址。除此之外,所有的数组名均表示首元素的地址,地址均为四个字节。
    二维数组的表示:int arr[ ] [4] (对); int arr[3] [ ] (错)。
    二维数组的理解:int arr[3] [4]可以理解为三个一维数组,每个一维数组中有四个元素。
    若 int *p = arr , 则 i [arr] = i ; arr [i] = i ; *(i+arr) = i ; * (p+i) = i ; p [i] = i 这些表示法均成立。
    一维数组的大小计算:int arr [10]={0}; int sz =sizeof(arr) / sizeof (arr[0])

    本次PTA作业第7,9题还不会。

    一.PTA实验作业

    题目1

    7-7 计算阶乘和

    对于给定的正整数N,需要你计算 S=1!+2!+3!+...+N!。

    1.提交列表

    2.设计思路

    每轮循环求i的阶乘,加给sum,再将i+1,进行下一轮循环,当i大于N时,循环结束。

    3.本题调试

    第一次提交审错题,第二次就OK了,第三次大概是忘了交过又交了一遍。

    题目2.

     7-19 求简单交错序列前N项和

    本题要求编写程序,计算序列 1 - 1/4 + 1/7 - 1/10 + ... 的前N项之和。

    1.提交列表

    2.设计思路

    定义flag,denominator为分子和分母,i为循环执行次数,item为每次循环时分子除以分母的值,每轮循环将item加给sum。每轮循环将item加给sum题目中每隔一次循环item变号,所以每次循环时将flag变号,同时将i加一,直到i到大于n,停止循环,输出sum的值。

    3.调试过程

    定义a为已循环次数,但在每次循环够没有将其加一,导致程序进入死循环。

    题目3.

    1.7-5 找出最小值

     本题要求编写程序,找出给定一系列整数中的最小值。

    1.提交列表

    2.设计思路。

    输入n为循环次数,先输入一个整数,让它为最小值,之后每轮循环都输入一个整数,将这个整数与当前最小值比较,若小于最小值,则将其赋值给最小值。

    3.调试过程

    定义了I,后面又使用了i,导致编译错误。

    二.同学代码结对互评。

    PTA40题

    我的代码

    雷慧同学的代码

    此题虽然我不懂非零返回是个什么鬼错误,总感觉自己的没错,但是经过雷慧同学的指导,我知道本题用子函数加循环体做更合适。

    雷慧同学的代码设计更清晰简单。

    三.截图本周PTA最后排名

    四.本周学习总结

    1.我学到了

    while和for 循环都可以用来处理同一个问题,一般可以互相代替。
    对于while和do-while循环,循环体中应包括使循环趋于结束的语句。
    用while和do-while循环时,循环变量初始化的操作应在while和do-while语句之前完成,而for语句可以在内部实现循环变量的初始化。
    for循环是最常用的循环,它的功能强大,可以代替其他循环。

    2.第8,9题还是不会做。

    3.循环结构考试总结:

    while

    特点:如果一开始条件不成立,永远不会执行循环体

    do while

    特点:不管条件是否成立,至少会执行一次循环体

     for

    选择:一般优先考虑for循环,然后在考虑while循环,但需要根据具体情况,有时while比for好用

    break的使用:1.switch语句:退出整个switch语句 2.循环结构:退出整个循环结构

    注意点:多重嵌套只对最近的的循环体有效

    continue的使用:结束当前这次的循环体,进入下一次循环体。

  • 相关阅读:
    GridView合并行代码
    GridView合并行头代码
    Javascript 的几种写法与提示
    [转] 浅谈MSSQL锁机制
    Two ways of using memory: Stack and Heap
    You have to know how .Net code "managed"?
    Sql Server Profiler
    InterProcess Communication
    database Index
    敏捷开发
  • 原文地址:https://www.cnblogs.com/lhx0814/p/8149210.html
Copyright © 2020-2023  润新知