当前位置: 首页 > wzjs >正文

曹鹏 wordpress西安seo优化推广

曹鹏 wordpress,西安seo优化推广,各大网站网址,微信公众号网站制作C 语 言 --- 经 典 习 题 2 第 一 题 - - - 素 数素 数素 数 的 性 质 第 二 题 - - - 反 向 输 出 一 个 整 数第 三 题 - - - 水 仙 花 数第 四 题 - - - 变 种 水 仙 花 数总结 💻作者简介:曾 与 你 一 样 迷 茫,现 以 经 验 助 你 入 门 …

C 语 言 --- 经 典 习 题 2

  • 第 一 题 - - - 素 数
    • 素 数
    • 素 数 的 性 质
  • 第 二 题 - - - 反 向 输 出 一 个 整 数
  • 第 三 题 - - - 水 仙 花 数
  • 第 四 题 - - - 变 种 水 仙 花 数
  • 总结

💻作者简介:曾 与 你 一 样 迷 茫,现 以 经 验 助 你 入 门 C 语 言
💡个人主页:@ 笑 口 常 开 xpr 的 个 人 主 页
📚系列专栏:C 启 新 程
✨代码趣语:任 何 傻 瓜 都 能 写 出 计 算 机 能 理 解 的 代 码。优 秀 的 程 序 员 写 出 人 类 能 理 解 的 代 码
💪代码千行,始 于 坚 持 ,每 日 敲 码,进 阶 编 程 之 路。

在这里插入图片描述

       在 编 程 的 奇 妙 宇 宙 里,每 一 道 C 语 言 的 题 目 都 宛 如 一 颗 神 秘 的 星 辰 ,潜 藏 着 无 尽 的 解 题 思 路 和 创 新 可 能 。你 可 曾 在 夜 深 人 静 时 苦 思 冥 想,一 道 看 似 简 单 的 C 语言 题 目 背 后 ,究 竟 藏 着 怎 样 的 算 法 奥 秘 ?又 能 为 我 们 解 决 实 际 问题 带 来 怎 样 的 启 发 ?今 天 ,让 我 们 投 身 C 语 言 刷 题 海 洋,挖 掘 代 码 宝 藏 ,体 验 解 题 快 感,解 锁 其 无 限 潜 力,向 编 程 高 手 迈 进!

第 一 题 - - - 素 数

描 述:
输 入 整 数 num1 和 整 数 num2,求 出 大 于 等 于 num1 并 且 小 于 等 于 num2 之 间 的 所 有 素 数。
输 入 描 述:
两 个 整 数,中 间 用 空 格 隔 开。
输 出 描 述:
多 行,素 数 之 间 用 空 格 隔 开,前 面 输 出 素 数,最 后 一 行 输 出 素 数 的 总 个 数。

思 路 分 析:
         输 入 两 个 整 数,计 算 并 找 出 这 两 个 整 数 之 间 的 全 部 素 数。为 解 决 此 问 题,首 先 需 要 掌 握 素 数 的 定 义,明 确 素 数 所 具 备 的 数 学 特 征。然 后 还 需 进 一 步 思 考 并 确 定 采 用 何 种 合 适 的 算 法 或 方 法 ,以 便 高 效 、准 确 地 找 出 给 定 区 间 内 的 所 有 素 数。

素 数

         素 数,又 称 为 质 数,是 指 在 大 于 1 的 自 然 数 中,除 了 1 和 它 本 身 以 外 不 再 有 其 他 因 数 的 自 然 数。

素 数 的 性 质

  • 无 穷 性:素 数 有 无 穷 多 个。
  • 分 布 规 律:素 数 在 自 然 数 中 的 分 布 是 没 有 明 显 规 律 的,随 着 数 字 的 增 大,素 数 的 分 布 越 来 越 稀 疏。
  • 特 殊 性 质:除 了 2 以 外,所 有 的 素 数 都 是 奇 数。因 为 偶 数 都 能 被 2 整 除,所 以 除 2 外 的 偶 数 都 不 是 素 数。

温 馨 提 示:读 者 们 ,先 自 己 写 代 码,这 是 提 升 编 程 能 力 的 好 机 会。若 未 达 要 求 ,别 气 馁 ,参 考 下 文 代 码 会 有 新 收 获。

         首 先 我 们 可 以 先 通 过 循 环 来 找 出 两 个 整 数 之 间 的 所 有 整 数,然 后 在 这 些 整 数 中 找 到 所 有 的 素 数。

方 法 一:

试除法:
         对 于 给 定 的 正 整 数 n,从 2 开 始,依 次 用 n 除 以 每 个 小 于 n 的 正 整 数 i。如 果 在 这 个 过 程 中,存 在 某 个 i 使 得 n 能 被 i 整除,那 么 这 个 数 就 不 是 素 数;如 果 n 不 能 被 任 何 一 个 小 于 它 的 正 整 数 整 除,那 么 n 就 是 质 数。

下 面 展 示 代 码 示 例

#include<stdio.h>
int main()
{int num1 = 0;int num2 = 0;scanf("%d %d", &num1, &num2);int i = 0;int count = 0;for (i = num1;i <= num2;i++){if (i == 2)//将数字2单独处理{printf("%d ", i);continue;}int j = 0;int flag = 0;//每次判断前将flag重置为0for (j = 2;j < i;j++){if (i % j == 0){flag = 1;//flag为标志位,记录这个数是否为素数break;}}if (flag == 0){count++;//计数器count,记录素数的个数。printf("%d ", i);}if (i == num2){printf("\n");}}printf("%d\n", count + 1);//输出时加上2return 0;
}

方 法 二 :

         方 法 一 判 断 一 个 数 n 是 否 为 素 数 时,需 逐 个 试 除 从 2 到 该 数 之 间 的 所 有 数 字,过 程 繁 琐,导 致 程 序 效 率 较 低。而 方 法 二 则 利 用 了 素 数 的 特 性 ,优 化 了 判 断 逻 辑,显 著 提 升 了 代 码 的 执 行 效 率。实 际 上,不 需 要 试 除 到 n - 1,只 需 要 试 除 到 根 号 n 即 可。这 是 因 为 如 果 n 有 一 个 大 于 根 号 n 的 因 数 a,那 么 必 然 存 在 一 个 小 于 根 号 n 的 因 数 b,使得 n = a * b。

下 面 展 示 代 码 示 例

#include<stdio.h>
#include<math.h>
int main()
{int i = 0;int j = 0;int num1 = 0;int num2 = 0;int flag1 = 1;scanf("%d %d", &num1, &num2);for (i = num1;i <= num2;i+=2){if (i == 2)//将数字2单独处理{printf("%d ", i);i = 1;//保留3continue;}if (num1 % 2 == 0 && flag1 == 1 && num1 != 2){flag1 = 0;i = i - 1;//保留num1 + 1continue;}int flag = 1;for (j = 2;j <= sqrt(i);j++){if (i % j == 0){flag = 0;break;}}if (flag == 1){printf("%d ", i);}}return 0;
}

总 结
         在 上 面 的 代 码 中 ,引 入 了 头 文 件 math.h 中 的 sqrt 函 数 用 来 求 根 号 n。sqrt 用 于 求 解 一 个 数 的 平方 根 ,读 者 可 以 通 过 点 击 蓝 色 字 体 来 学 习 sqrt 的 相 关 使 用 技 巧。这 段 代 码 还 使 用 了 多 个 if 语 句 进 行 特 殊 值 的 筛 选,以 及 确 保 这 个 数 是 奇 数。

在这里插入图片描述

方 法 三:

因 式 分 解:
        对 于 一 个 整 数 n,从 2 开 始,依 次 用 n 除 以 每 个 可 能 的 因 数 i。如 果 n 能 被 i 整 除,那 么 i 就是 n 的 一 个 因 数,将 n 更 新 为 n / i,继 续 用 i 除 以 更 新 后 的 n,直 到 n 不 能 被 i 整 除 为 止,然 后 再 将 i 加 1,重 复 上 述 过 程,直 到 n 变 为 1。

下 面 展 示 代 码 示 例

#include <stdio.h>int main() 
{int start = 0;int end = 0;scanf("%d %d", &start, &end);//确保起始值小于等于结束值if (start > end) {int temp = start;start = end;end = temp;}//遍历从起始值到结束值的每一个数for (int num = start; num <= end; num++) {// 素数定义要求大于1,小于2的数直接跳过if (num < 2){continue;}int is_prime = 1;int n = num;//从2开始尝试对当前数进行因式分解for (int i = 2; i <= n; i++) {while (n % i == 0) {// 如果能被i整除,说明i是因数n /= i;if (n != 1){//若分解后n不为1,说明num不是素数is_prime = 0;}}if (!is_prime){// 一旦确定不是素数,跳出内层循环break;}}if (is_prime) {printf("%d ", num);}}printf("\n");return 0;
}

第 二 题 - - - 反 向 输 出 一 个 整 数

描 述:
将 一 个 整 数,反 向 输 出。
输 入 描 述 :
一 行 ,输 入 一 个 整 数 n(1000 <= n <= 9999)。
输 出 描 述 :
针 对 每 组 输 入,反 向 输 出 对 应 的 数。
示 例 1 :
输 入 :1234
输 出 :4321
示 例 2 :
输 入 :5678
输 出 :8765

解 题 必 备
         解 决 这 道 题 的 关 键 在 于 如 何 得 到 这 个 数 的 每 一 位,并 将 数 字 反 向 输 出

温 馨 提 示:读 者 们 ,先 自 己 写 代 码,这 是 提 升 编 程 能 力 的 好 机 会。若 未 达 要 求 ,别 气 馁 ,参 考 下 文 代 码 会 有 新 收 获。

下 面 展 示 代 码 示 例

#include <stdio.h>int main()
{int num = 0;scanf("%d", &num);while (num){printf("%d", num % 10);num = num / 10;}return 0;
}

第 三 题 - - - 水 仙 花 数

描 述:
         春 天 是 鲜 花 的 季 节,水 仙 花 就 是 其 中 最 迷 人 的 代 表,数 学 上 有 个 水 仙 花 数,他 是 这 样 定 义 的: “水 仙 花 数 ” 是 指 一 个 三 位 数,它 的 各 位 数 字 的 立 方 和 等 于 其 本 身,比 如:153 = 1 ^ 3 + 5 ^ 3 + 3 ^ 3。
输 入 描 述 :

输 出 描 述 :
输 出 三 位 数 中 所 有 的 水 仙 花 数

解 题 必 备
         对 于 100 - 999 之 间 的 每 一 个 数,分 别 求 出 个 位,十 位,百 位,然 后 计 算 它 们 的 立 方 之 和 是 否 等 于 该 数 本 身,如 果 等 于,则 是 水 仙 花 数,否 则 不 是。

温 馨 提 示:读 者 们 ,先 自 己 写 代 码,这 是 提 升 编 程 能 力 的 好 机 会。若 未 达 要 求 ,别 气 馁 ,参 考 下 文 代 码 会 有 新 收 获。

下 面 展 示 代 码 示 例

#include <stdio.h>
int main() 
{int i = 0;int ge = 0; int shi = 0;int bai = 0;for (i = 100; i < 1000; i++) {ge = i % 10;// 个位shi = i / 10 % 10;// 十位bai = i / 100;// 百位if (i == ge * ge * ge + shi * shi * shi + bai * bai * bai){printf("%d\n", i);}}return 0;
}

第 四 题 - - - 变 种 水 仙 花 数

描 述:
       变 种 水 仙 花 数 - Lily Number:把 任 意 的 数 字,从 中 间 拆 分 成 两 个 数 字,比 如 1461 可 以 拆 分 成(1 和 461),( 14 和 61),( 146 和 1), 如 果 所 有 拆 分 后 的 乘 积 之 和 等 于 自 身,则 是 一 个 Lily Number。
例如:
655 = 6 * 55 + 65 * 5
1461 = 1 * 461 + 14 * 61 + 146 * 1
求 出 5 位 数 中 的 所 有 Lily Number。
输 入 描 述 :

输 出 描 述 :
一 行 ,5 位 数 中 的 所 有 Lily Number,每 两 个 数 之 间 间 隔 一 个 空 格。

温 馨 提 示:读 者 们 ,先 自 己 写 代 码,这 是 提 升 编 程 能 力 的 好 机 会。若 未 达 要 求 ,别 气 馁 ,参 考 下 文 代 码 会 有 新 收 获。

下 面 展 示 代 码 示 例

#include <stdio.h>
int main() 
{int i = 0;for (i = 10000; i <= 99999; i++) {if (i == (i/10000)*(i%10000)+(i/1000)*(i%1000)+(i/100)*(i%100)+(i/10)*(i%10)) {printf("%d ", i);}}return 0;
}

在这里插入图片描述

总结

       至 此,关 于 C 语 言 的 探 索 暂 告 一 段 落 ,但 你 的 编 程 征 程 才 刚 刚 启 航。写 代 码 是 与 机 器 深 度 对 话 ,过 程 中 虽 会 在 语 法 、算 法 困 境 里 挣 扎,但 这 些 磨 砺 加 深 了 对 代 码 的 理 解。愿 你 合 上 电 脑 后,灵 感 不 断,在 C 语 言 的 世 界 里 持 续 深 耕,书 写 属 于 自 己 的 编 程 传 奇,下 一 次 开 启 ,定 有 全 新 的 精 彩 等 待。小 编 期 待 重 逢,盼 下 次 阅 读 见 你 们 更 大 进 步,共 赴 代 码 之 约!

http://www.dtcms.com/wzjs/352768.html

相关文章:

  • jquery网站合肥百度搜索优化
  • 服装网站建设规划哪些平台可以免费推广
  • 网上写作真正能赚钱的网站发软文的网站
  • 济南网站的建设seo谷歌
  • 深圳最好的网站开发公司电话seo入门培训学校
  • 网站规划与建设课程郑州关键词seo
  • 手机怎么做网站卖东西百度seo视频教程
  • 都有什么推广平台湖南广告优化
  • 高端网站建设jm3q西安外包网络推广
  • 博兴县建设局网站站长之家seo查询官方网站
  • 那些网站能够做推广线下推广方式
  • 南京中天园林建设网站seo工资多少
  • 建一个淘宝客网站需要多少钱百度指数支持数据下载吗
  • wordpress 获取分类列表seo搜索规则
  • 国外设计网站 绿色的app推广接单
  • 日本做a爱片视频网站高级seo优化招聘
  • 珠海建网站wix网站制作
  • 番禺网站制作设计新闻今天最新消息
  • 东莞市天气seo站长
  • 做网站 营业执照平台推广精准客源
  • 佛山网站建设及推广服务公司软文推广发布平台
  • 建设银行公积金查询网站首页南昌seo管理
  • 设计高端网站网页推广平台
  • 做泌尿科网站价格公司专业网站建设
  • 厦门企业网站制作南宁网站制作
  • 网站建设师要求优化大师官方免费下载
  • wordpress 仪表盘自定义广东seo推广费用
  • 网站建设考试样题及答案商丘seo外包
  • 如何利用网络平台挣钱武汉标兵seo
  • 临漳手机网站建设免费网站生成器