| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2752 人关注过本帖
标题:求解:输出含7以及7的倍数,为什么M=100以内的可以,当M=1000或更大就不可以 ...
只看楼主 加入收藏
L_Study
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2012-3-3
结帖率:100%
收藏
已结贴  问题点数:10 回复次数:6 
求解:输出含7以及7的倍数,为什么M=100以内的可以,当M=1000或更大就不可以了?
#include "stdafx.h"
#include<stdio.h>

void main()
{
    long M=100;
    long array[M]={0};
    long i,j=0;

        
    for(i=7;i<M;i++)
    {
        if(i%7==0)
        {
            array[j]=i;
                  j++;
        }   
       else
       {
           long k=i;
           while(i)
           {
               if(i%10==7)
               {
                  array[j]=k;
                  j++;
                  break;  
               }
               i=i/10;
           }
           i=k;
       }
        
    }
      for(long p=0;p<j;p++)
        printf("%d\n",array[p]);
    printf("\n\n\n%d\n",j);
   
}
搜索更多相关主题的帖子: long void include 
2012-03-03 15:54
有容就大
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:东土大唐
等 级:版主
威 望:74
帖 子:9048
专家分:14309
注 册:2011-11-11
收藏
得分:10 
程序代码:
#include<stdio.h>
#define M 1000

void main()
{
   
    long array[M]={0};
    long i,j=0, p = 0;

       
    for(i=7;i<M;i++)
    {
        if(i%7==0)
        {
            array[j]=i;
                  j++;
        }   
       else
       {
           long k=i;
           while(i)
           {
               if(i%10==7)
               {
                  array[j]=k;
                  j++;
                  break; 
               }
               i=i/10;
           }
           i=k;
       }
       
    }
      for( p=0;p<j;p++)
        printf("%d\n",array[p]);
    printf("\n\n\n%d\n",j);
   
}
上面是改的,1000以内的可以。
这个:#include "stdafx.h" 没必要吧。
long M=100;
long array[M]={0};
这样定义数组也可以?


梅尚程荀
马谭杨奚







                                                       
2012-03-03 15:59
L_Study
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2012-3-3
收藏
得分:0 
嗯 改过了,可还是不行啊,是从272输出的
2012-03-03 16:22
有容就大
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:东土大唐
等 级:版主
威 望:74
帖 子:9048
专家分:14309
注 册:2011-11-11
收藏
得分:0 
以下是引用L_Study在2012-3-3 16:22:00的发言:

嗯 改过了,可还是不行啊,是从272输出的
那是因为屏幕放不下,被翻滚掉了。

梅尚程荀
马谭杨奚







                                                       
2012-03-03 16:26
有容就大
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:东土大唐
等 级:版主
威 望:74
帖 子:9048
专家分:14309
注 册:2011-11-11
收藏
得分:0 
for( p=0;p<j;p++)
{
     if(p % 23 == 0) system("pause"); // 加上这个能看全部的
        printf("%d\n",array[p]);
}


梅尚程荀
马谭杨奚







                                                       
2012-03-03 16:28
L_Study
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2012-3-3
收藏
得分:0 
回复 5楼 有容就大
去掉\n 就可以了 谢谢啦
2012-03-03 16:40
有容就大
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:东土大唐
等 级:版主
威 望:74
帖 子:9048
专家分:14309
注 册:2011-11-11
收藏
得分:0 
以下是引用L_Study在2012-3-3 16:40:13的发言:

去掉\n 就可以了 谢谢啦
聪明~~

梅尚程荀
马谭杨奚







                                                       
2012-03-03 16:41
快速回复:求解:输出含7以及7的倍数,为什么M=100以内的可以,当M=1000或更大就 ...
数据加载中...
 
   



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

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