| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 527 人关注过本帖
标题:帮忙改下,谢谢啦!!
只看楼主 加入收藏
冯浩123
Rank: 1
等 级:新手上路
帖 子:4
专家分:3
注 册:2012-12-1
收藏
得分:0 
以下便是了:


#include<stdio.h>
#include<ctype.h>

int join(int array[],int count);
int factor(int n);

int main(void)
{
    int array[100];
    char n;
    int num,i,count;
    while(getchar()!='\n')
    {
        for(count=0,i=0;i<100;)
        {
            n=getchar();
            if(isdigit(n))
            {
                array[i]=(int)(n-'0');
                count++;
                i++;
            }
            if(n=='\n')
            break;
        }
        num=join(array,count);
        if(num==0)
        printf("0\n");
        else
        printf("%d\n",factor(num));
    }
    return 0;
}
int join(int array[],int count)
{
    int i,sum=0;
    for(i=0;i<count;i++)
    sum=sum*10+array[i];
    return sum;
}
int factor(int n)
{
    int j;
    if(n==1)
        return n;
    for(j=n-1;j>1;j--)
    {
        if(n%j==0)
        break;
    }
    if(j==1)
        return n;
    else
        return j;
}
2013-04-03 21:08
快速回复:帮忙改下,谢谢啦!!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.022606 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved