
C语言编程 每个非素数(合数)都可以写成几个素数(也可称为质数)相乘的形式,这几个素数就都叫做
每个非素数(合数)都可以写成几个素数(也可称为质数)相乘的形式,这几个素数就都叫做这个合数的质因数。比如,6可以被分解为2x3,而24可以被分解为2x2x2x3。现在,你...
每个非素数(合数)都可以写成几个素数(也可称为质数)相乘的形式,这几个素数就都叫做这个合数的质因数。比如,6可以被分解为2x3,而24可以被分解为2x2x2x3。
现在,你的程序要读入一个[2,100000]范围内的整数,然后输出它的质因数分解式;当读到的就是素数时,输出它本身。
之前看有人回答的不适合刚学的新手,我也是才开始学,所以再发一个,欢迎指正
#include <stdio.h>
main()
{
int x;
int n;
int i;
scanf("%d",&x);
printf("x=");
for(i=2;x>i;i++){
n=x%i;
if(n==0){
x=x/i;
printf("%dx",i);i=i-1;
}
}
if(x==i){
printf("%d",i);
}
return 0;
} 展开
现在,你的程序要读入一个[2,100000]范围内的整数,然后输出它的质因数分解式;当读到的就是素数时,输出它本身。
之前看有人回答的不适合刚学的新手,我也是才开始学,所以再发一个,欢迎指正
#include <stdio.h>
main()
{
int x;
int n;
int i;
scanf("%d",&x);
printf("x=");
for(i=2;x>i;i++){
n=x%i;
if(n==0){
x=x/i;
printf("%dx",i);i=i-1;
}
}
if(x==i){
printf("%d",i);
}
return 0;
} 展开
3个回答
展开全部
#include <stdio.h>
int main()
{
int n,i=2;
scanf("%d",&n);
while(1)
{
if(n%i==0)
{
printf("%d",i);
n/=i;
if(n == 1) break;
printf("*");
}
else
i++;
}
return 0;
}
展开全部
#include<stdio.h>
int sushu(int n)
{
int i,a=1;
for (i=2;i<n;i++)
{
if (n%i ==0){
a=0;
break;
}
}
return a;
}
int main()
{
int n,i=2,a,b,x=0;
scanf("%d", &n);
printf("%d=",n);
b=sushu(n);
if(b==1)
printf("%d",n);
if(b==0){
for(i=2;i<=n;i++){
while(n%i==0){
if(i<n)
printf("%dx",i);
if(i==n)
printf("%d",i);
n/=i;
}
}
}
return 0;
}
int sushu(int n)
{
int i,a=1;
for (i=2;i<n;i++)
{
if (n%i ==0){
a=0;
break;
}
}
return a;
}
int main()
{
int n,i=2,a,b,x=0;
scanf("%d", &n);
printf("%d=",n);
b=sushu(n);
if(b==1)
printf("%d",n);
if(b==0){
for(i=2;i<=n;i++){
while(n%i==0){
if(i<n)
printf("%dx",i);
if(i==n)
printf("%d",i);
n/=i;
}
}
}
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include"stdio.h"
prime(int date)
{
int i;
for(i=2;i<date;i++)
{
if(date%i==0)
break;
}
if(i==date){
return 1;
}
else
return 0;
}
int main()
{
int a,i;
scanf("%d",&a);
if(!prime(a))
{
printf("%d=",a);
for(i=2;i<=a;i++)
if(prime(i))
while(a%i==0)
{
a/=i;
printf("%d",i);
if(a!=1)
printf("x");
}
}
else
printf("%d=%d",a,a);
return 0;
}
prime(int date)
{
int i;
for(i=2;i<date;i++)
{
if(date%i==0)
break;
}
if(i==date){
return 1;
}
else
return 0;
}
int main()
{
int a,i;
scanf("%d",&a);
if(!prime(a))
{
printf("%d=",a);
for(i=2;i<=a;i++)
if(prime(i))
while(a%i==0)
{
a/=i;
printf("%d",i);
if(a!=1)
printf("x");
}
}
else
printf("%d=%d",a,a);
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |