c语言将一个正整数分解质因数,望高手帮我详细解释一下程序?

#include<stdio.h>voidmain(){inti,n;printf("inputthen:");scanf("%d",&n);printf("%d=",n... #include<stdio.h>
void main()
{int i,n;
printf("input the n:");
scanf("%d",&n);
printf("%d=",n);
for(i=2;i<n;)
{if(n%i==0)
{printf("%d*",i);
n=n/i;}
else i++;
}printf("%d",n);
}
展开
 我来答
帐号已注销
高粉答主

2020-05-18 · 每个回答都超有意思的
知道答主
回答量:2169
采纳率:0%
帮助的人:36.1万
展开全部

1、首先打开vc6.0, 新建一个vc项目,添加头文件

2、添加main主函数,如下图所示。

3、然后定义 n, i 两个变量,如下图所示。

4、接着使用scanf给n赋值,使用for循环

5、然后用while作为内层循环,使用printf打印i。

6、最后使用if条件语句,运行程序,如下图所示,正整数分解为质因子就完成了。

问明6E
高粉答主

2019-06-15 · 每个回答都超有意思的
知道答主
回答量:279
采纳率:100%
帮助的人:12.9万
展开全部

代码:

#include <stdio.h>

void main()

{

int n,i;

printf("请输入一个正整数");

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",n);

}

方法二、

扩展资料:

scanf用法:

输出的值只是空格前面的字符是因为scanf函数的输入格式错误,输入参数的变量前需要加&。

scanf("%s",s);改为scanf("%s",&s);

scanf的用法是:scanf("格式控制字符串",输入参数一,输入参数二);

格式控制字符串包含:格式控制说明,普通字符。

1、格式控制字符串表示输入的格式,(int型用%d,float用%f,double型用%lf)

2、普通字符:在输出数据的时候,按照原样输出的字符,如:"fahr=%d,celsius=%d\n"中的fahr=,celsius=。

3、输入的参数是变量的地址,所以要在变量前面加&。

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
xoalyg
2011-10-11 · TA获得超过4178个赞
知道大有可为答主
回答量:2356
采纳率:100%
帮助的人:2379万
展开全部

#include <stdio.h>

void dissociation(int num) {

    int i,b = 0;

printf("%d = ", num);

for(i = 2;num > 1;i++) {

if(num % i == 0) {

num /= i;

if(b == 1) printf("×%d",i);

else {

printf("%d",i);

b = 1;

}

i--;

}

}

}

int main() {

int i;

for(i = 2;i <= 20;i++) {

dissociation(i);

printf("\n");

}

return 0;

}

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
yuqangy
推荐于2017-11-24 · TA获得超过233个赞
知道答主
回答量:136
采纳率:0%
帮助的人:102万
展开全部
#include<stdio.h>
void main()
{int i,n;
printf("input the n:"); //输出input the n:
scanf("%d",&n);//输入一个数值
printf("%d=",n);//打印你刚才输入的数值
for(i=2;i<n;)
{if(n%i==0)
{printf("%d*",i);//当n除以i除尽的时候打印i*,n = n/i
n=n/i;}
else i++;
}printf("%d",n);
}
追问
for循环的执行过程看不懂,能不能解释下?
追答
for中的i自加的条件是n除i的余数不为零
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
派旺囡5139
2011-10-11 · TA获得超过470个赞
知道答主
回答量:538
采纳率:0%
帮助的人:208万
展开全部
什么地方你没有看懂啊
追问
for循环的过程看不懂,帮忙解释下
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式