C 语言实训教程

----循环专项练习


一、 实验目的

  1. 掌握在程序设计条件型循环结构时,如何正确地设定循环条件,以及如何控制循环的次数。

  2. 掌握条件型、技术型循环结构的基本测试调试方法。

  3. 掌握如何正确地控制技术型循环结构的次数。

  4. 掌握嵌套循环结构中,提高程序效率的方法

二、 实验内容及实验步骤

  1. 将一个十进制数 n 转为指定的 B 机制数

  2. 一组数从大到小进行排序,根据某一数值,在数组中查找出最先出现的与其相等的数据元素,如果存在,就返回它的下标,否则返回-1。 提示:采用冒泡法排序,然后可以采用折半查找法查找,如果查找某个数,先把这个数和这个序列的居中的数比较,确定区域后再和这个确定的区域内居中的数比较。

  3. 在键盘上输入一组数据存入数组,删除数组中的在后面的重复数据,输出到屏幕上去

  4. 输出以下杨辉三角形 1

1 1

1 2 1

1 3 3 1

1 4 6 4 1

5. 求勾股数,即满足𝑥𝑥2 + 𝑦𝑦2 = 𝑧𝑧2的自然数,最小勾股数为 3,4,5。要避免 3,4,5 和 4,3,5 这样的重复数,因此要保持关系“𝑥𝑥 < 𝑦𝑦 < 𝑧𝑧”。

  1. 一本书的页面从自然数 1 开始顺序编码直到自然数 n,书的页码按照通常的习惯编排,每个页码都不含多余的前导数字 9,例如,第 6 页用 6表示,而不是 06 或 006,数字计数问题要求对给定书的总页码 n,计算出书的全部页码共用多少次 0,1,2……9.。

  2. 输入两个正整数 m 和 n 求最大公约数和最小公倍数。

  3. 输入一行字符,先消除输入字符串前面和后面的所有空格(中间的不消除),再判断是否是"回文,如果是输出 YES,否则,输出 NO。

  4. 求Sn=a+aa+aaa+ +aaaaaaa(n 个a),其中a 和n 都从键盘中输入,

    如从键盘中输入 2,5,则计算 S5=2+22+222+2222+22222。

  5. 给出任意人民币(>10 元)的整币兑换成 5 元,2 元,和 1 元(要求三种都有)币值的方法有多少种

  6. *百鸡百钱问题:鸡翁一,值钱 5,鸡母一,值钱 3;鸡雏三,值钱 1,

百钱买百鸡,请问鸡翁、鸡母、鸡雏各几只?输出到屏幕上。

12.*用二分法求下面方程在(-10,10)之间的根 2x3 − 4x2 + 3x − 63 = 0结题思路如下:先指定一个区间[x1,x2],如果有函数 f(x)在此区间是单调变化,可以根据 f(x1)和 f(x2)是否同符号来确定方程 f(x)=0,在区间[x1,x2]是否有一个实根。如果不同号,则说明在这个区间[x1,x2]没有实根,要重新改变 x1,x2 的值。当确定[x1,x2]有一个实根后,采用二分法将区间[x1,x2]一分为二,再判断在哪一个小区间有根,如此不断进行下去,直到小区间足够小为止。