标题:程序出错了 改过了 还是有问题
取消只看楼主
njzhangyuhao
Rank: 2
等 级:论坛游民
帖 子:197
专家分:35
注 册:2010-11-20
结帖率:100%
 问题点数:0 回复次数:3 
程序出错了 改过了 还是有问题
求1000000以内 将该数的首位数字移到末尾得到的数是原数的整数倍 比如142857     428571就是整数倍  
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
int Troitsky(long a[])
{
    long i,j,temp1,temp2,temp3;
    int n;
    for(i=1,n=0;i<=1000000;i++)/*我把这里i改成1了 程序可以运行但没有结果 怎么回事?*/
    {   
        for(j=0;i%((long)pow(10,j))!=i;j++);
        temp1=i/(long)pow(10,j-1);
        temp2=i%(long)pow(10,j-1)*10;
        temp3=temp2+temp1;
        if(temp3%i==0)
            a[n++]=i;
    }
    return n;
}
void main()
{
    long a[10];
    int n,i;
    FILE *fp;
    n=Troitsky(a);
    if((fp=fopen("myf2.out","w"))==NULL)
    {
        printf("cannot open the file\n");
        exit(0);
    }
    for(i=0;i<n;i++)
    {
        fprintf(fp,"%10ld",a[i]);
        printf("%10ld",a[i]);
    }
    printf("\n");
    fprintf(fp,"\n");
    fprintf(fp,"My exam number is : 1231231234\n");
    fclose(fp);
}

[ 本帖最后由 njzhangyuhao 于 2011-3-30 20:19 编辑 ]
搜索更多相关主题的帖子: include long 
2011-03-29 21:44
njzhangyuhao
Rank: 2
等 级:论坛游民
帖 子:197
专家分:35
注 册:2010-11-20
得分:0 
这个应该有
2011-03-30 13:08
njzhangyuhao
Rank: 2
等 级:论坛游民
帖 子:197
专家分:35
注 册:2010-11-20
得分:0 
改过了 还是有问题
2011-03-30 20:21
njzhangyuhao
Rank: 2
等 级:论坛游民
帖 子:197
专家分:35
注 册:2010-11-20
得分:0 
我可以再编一个没问题的程序 但是我想知道这个为什么错了 这样下次就不会错了
2011-04-01 12:24



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-335138-1-1.html




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

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