• 程序设计入门——C语言 第6周编程练习 1 分解质因数(5分)


    1

    分解质因数(5分)

    题目内容:

    每个非素数(合数)都可以写成几个素数(也可称为质数)相乘的形式,这几个素数就都叫做这个合数的质因数。比如,6可以被分解为2x3,而24可以被分解为2x2x2x3。

     

    现在,你的程序要读入一个[2,100000]范围内的整数,然后输出它的质因数分解式;当读到的就是素数时,输出它本身。

     

    提示:可以用一个函数来判断某数是否是素数。

     

    输入格式:

    一个整数,范围在[2,100000]内。

     

    输出格式:

    形如:

    n=axbxcxd

    n=n

    所有的符号之间都没有空格,x是小写字母x。abcd这样的数字一定是从小到大排列的。

     

    输入样例:

    18

     

    输出样例:

    18=2x3x3

    时间限制:500ms内存限制:32000kb

    //
    //  main.c
    //  c yuyan
    //
    //  Created by anzhongyin on 2016/11/29.
    //  Copyright © 2016年 anzhongyin. All rights reserved.
    //
    
    #include <stdio.h>
    #include <math.h>
    int isPrime(int i);
    int main(int argc, const char * argv[]) {
        // insert code here...
        // TODO Auto-generated method stub
        int i;
        scanf("%d",&i);
        printf("%d=",i);
        do
        {
           
            for(int j=2;j<i;j++)
            {
                if(isPrime(j)&&i%j==0)
                {
                    printf("%dx",j);
                    i=i/j;
                    break;
                }
            }
           
        }while(!isPrime(i));
        printf("%d
    ",i);
    
    }
    int isPrime(int i)
    {
        int prime;
        int b=1;
        for(int j=2;j<i;j++)
        {
            if(i%j==0)
            {
                b=0;
                break;
            }
        }
        if(b)
        {
            prime=i;
        }
        else
        {
            prime=0;
        }
        return prime;
    }
    

      

    用例测试结果

    运行时间

    占用内存

    提示

    得分

    用例1通过

    13ms

    256kb

     

    1

    用例2通过

    13ms

    256kb

     

    1

    用例3通过

    1ms

    128kb

     

    1

    用例4通过

    1ms

    128kb

     

    1

    用例5通过

    1ms

    256kb

     

    1

    提交答案

     

    本次得分/总分:5.00/5.00分

  • 相关阅读:
    字符串处理(包括正则生成工具)
    php.ini 个别字段笔记
    php-5.4 升级到 php7.2
    【mysql笔记】针对 group_concat 长度限制
    七牛,前端上传图片
    PHP 替换 特殊空白符
    【代码块】定时任务<swoole> 100%无人值守
    安装nodejs
    linux安装beanstalkd
    个人笔记上传 -- redis安装
  • 原文地址:https://www.cnblogs.com/bcd589/p/6135751.html
Copyright © 2020-2023  润新知