零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C 语言基础入门
零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C++ 面向对象
零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C++ 设计模式
零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C++ STL
零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C/C++ 技术杂谈
零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C/C++ 常用函数
零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C/C++ 图像处理
零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C/C++ 算法/面试
零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C/C++ 项目实战
一.结果演示
please input a number:
90
90=2*3*3*5
please input a number:
200
200=2*2*2*5*5
二.源代码
程序分析:对 n 进行分解质因数,应先找到一个最小的质数 k ,然后按下述步骤完成:
1.如果这个质数恰等于 n ,则说明分解质因数的过程已经结束,打印出即可
2.如果 n>k ,但 n 能被 k 整除,则应打印出 k 的值,并用 n 除以 k 的商 , 作为新的正整数你 n,重复执行第一步
3.如果 n 不能被 k 整除,则用 k+1 作为 k 的值 , 重复执行第一步
源码如下:
[wppay]
/************************************************************************/
//@Author:猿说编程
//@Blog(个人博客地址): www.codersrc.com
//@File:C语言教程 - C/C++ 将一个正整数分解质因数。例如:输入 90, 打印出 90=2*3*3*5
//@Time:2021/09/30 08:00
//@Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
/************************************************************************/
#include <stdio.h>
#include <math.h>
#include <windows.h>
int main()
{
int n, i;
printf("\n please input a number: \n");
scanf("%d", &n);
printf("%d=", n);
for (i = 2; i <= n; i++)
{
while (n != i)
{
if (n % i == 0)
{
printf("%d*", i);
n = n / i;
}
else
break;
}
}
printf("%d", n);
}
[/wppay]
开通 vip 会员可免费阅读所有文章哟
代码下载:code.c
C4996 ‘scanf’: This function or variable may be unsafe. Consider using scanf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
三.猜你喜欢
- C/C++ 有 1 、 2 、 3 、 4 个数字,能组成多少个互不相同且无重复数字的三位数?都是多少
- C/C++ 企业发放的奖金根据利润提成。利润 (i) 低于或等于 10 万元时,奖金可提 10% ;利润高 于 10 万元,低于 20 万元时,低于 10 万元的部分按 10% 提成,高于 10 万元的部分,可可提 成 7.5% ; 20 万到 40 万之间时,高于 20 万元的部分,可提成 5% ; 40 万到 60 万之间时高于 40 万元的部分,可提成 3% ; 60 万到 100 万之间时,高于 60 万元的部分,可提成 1.5% ,高于 100 万元时,超过 100 万元的部分按 1% 提成,从键盘输入当月利润 i ,求应发放奖金总数
- C/C++ 一个整数,它加上 100 后是一个完全平方数,再加上 168 又是一个完全平方数,请问该数是多少
- C/C++ 输入某年某月某日,判断这一天是这一年的第几天
- C/C++ 输入三个整数 x,y,z ,请把这三个数由小到大输出
- C/C++ 用 * 号输出字母 c 的图案
- C/C++ 要求输出国际象棋棋盘
- C/C++ 古典问题:有一对兔子,从出生后第 3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?
- C/C++ 判断 101-200 之间有多少个素数,并输出所有素数
- C/C++ 打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。例如: 153 是一个“水仙花数”,因为 153=1 的三次方+ 5 的三次方+ 3 的三次方C/C++ 打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。例如: 153 是一个“水仙花数”,因为 153=1 的三次方+ 5 的三次方+ 3 的三次方
- C/C++ 将一个正整数分解质因数。例如:输入 90, 打印出 90=233*5
ChatGPT 3.5 国内中文镜像站免费使用啦
暂无评论内容