<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<atom:link href="https://www.gentoo-zh.org/extern.php?action=feed&amp;tid=323&amp;type=rss" rel="self" type="application/rss+xml" />
		<title><![CDATA[Gentoo中文社区 / C 练习实例14 - 将一个正整数分解质因数]]></title>
		<link>https://www.gentoo-zh.org/viewtopic.php?id=323</link>
		<description><![CDATA[C 练习实例14 - 将一个正整数分解质因数 最近发表的帖子。]]></description>
		<lastBuildDate>Mon, 29 Aug 2022 07:03:37 +0000</lastBuildDate>
		<generator>FluxBB</generator>
		<item>
			<title><![CDATA[C 练习实例14 - 将一个正整数分解质因数]]></title>
			<link>https://www.gentoo-zh.org/viewtopic.php?pid=329#p329</link>
			<description><![CDATA[<p>题目：将一个正整数分解质因数。例如：输入90,打印出90=2*3*3*5。</p><p>程序分析：对n进行分解质因数，应先找到一个最小的质数k，然后按下述步骤完成：</p><p>&#160; &#160; (1)如果这个质数恰等于（小于的时候，继续执行循环）n，则说明分解质因数的过程已经结束，另外 打印出即可。<br />&#160; &#160; (2)但n能被k整除，则应打印出k的值，并用n除以k的商,作为新的正整数n.重复执行第二步。<br />&#160; &#160; (3)如果n不能被k整除，则用k+1作为k的值,重复执行第一步。</p><br /><p>#include&lt;stdio.h&gt;<br />int main()<br />{<br />&#160; &#160; int n,i;<br />&#160; &#160; printf(&quot;请输入整数：&quot;);<br />&#160; &#160; scanf(&quot;%d&quot;,&amp;n);<br />&#160; &#160; printf(&quot;%d=&quot;,n);<br />&#160; &#160; for(i=2;i&lt;=n;i++)<br />&#160; &#160; {<br />&#160; &#160; &#160; &#160; while(n%i==0)<br />&#160; &#160; &#160; &#160; {<br />&#160; &#160; &#160; &#160; &#160; &#160; printf(&quot;%d&quot;,i);<br />&#160; &#160; &#160; &#160; &#160; &#160; n/=i;<br />&#160; &#160; &#160; &#160; &#160; &#160; if(n!=1) printf(&quot;*&quot;);<br />&#160; &#160; &#160; &#160; }<br />&#160; &#160; }<br />&#160; &#160; <br />&#160; &#160; printf(&quot;\n&quot;);<br />&#160; &#160; return 0;<br />}</p>]]></description>
			<author><![CDATA[dummy@example.com (batsom)]]></author>
			<pubDate>Mon, 29 Aug 2022 07:03:37 +0000</pubDate>
			<guid>https://www.gentoo-zh.org/viewtopic.php?pid=329#p329</guid>
		</item>
	</channel>
</rss>
