| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 585 人关注过本帖
标题:求大神给指正下。这段代码的错误
只看楼主 加入收藏
wq553344
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2011-5-24
结帖率:66.67%
收藏
已结贴  问题点数:20 回复次数:9 
求大神给指正下。这段代码的错误
#include<stdio.h>
#define SHU 100
void main()
{
int i;
int j;
int n[100]={2,3};
for(i=2;i<100;i++)
{
  j=n[i-1]*n[i-2];
  if(j>9)
   {
   n[i]=j/10;
   n[i+1]=j%10;
   i=i+1;
   }
   n[i]=n[i-1]*n[i-2];
}
   for(i=0;i<100;i++)
   printf("%10d",n[i]);

}

(这段代码要实现的是按顺序生成序列的100项。第一项是2.第二项是3,
后继项这样生成:
若最后两项相乘为一位数则这就是后继项。如果是两位数则十位和个位分别为后两项。)
搜索更多相关主题的帖子: include 
2011-06-02 06:47
qq1023569223
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:湖南科技大学
等 级:贵宾
威 望:26
帖 子:2753
专家分:13404
注 册:2010-12-22
收藏
得分:5 
#include<stdio.h>
void main()
{
   int i;
   int j;
   int n[100]={2,3};

   for(i=2;i<100;i++)  
   {
     j=n[i-1]*n[i-2];  
     if(j>9)
     {
       n[i]=j/10;
       n[i+1]=j%10;
       i=i+1;
     }
     n[i]=n[i-1]*n[i-2];
   }

   for(i=0;i<100;i++)
   printf("%10d",n[i]);
}


[ 本帖最后由 qq1023569223 于 2011-6-2 10:02 编辑 ]

   唯实惟新 至诚致志
2011-06-02 07:10
hjywyj
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:3
帖 子:1114
专家分:2611
注 册:2010-4-14
收藏
得分:5 
看不懂
2011-06-02 07:36
wq553344
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2011-5-24
收藏
得分:0 
回复 2楼 qq1023569223
我按这个改完 用turbo c++3.0  运行提示 EXpression  syntax
什么意思?
2011-06-02 08:33
tuoci
Rank: 2
等 级:论坛游民
帖 子:3
专家分:25
注 册:2011-5-22
收藏
得分:5 
#include<stdio.h>
#define SHU 100
int main(void)
{
int i;
int j;
int n[100]={2,3};
for(i=2;i<100;i++)
{
  j=n[i-1]*n[i-2];
  if(j>9)
   {
   n[i]=j/10;
   n[i+1]=j%10;
   i=i+1;
   }
   else
           n[i]=j;
}
   for(i=0;i<100;i++)
   printf("%10d",n[i]);
   return 0;
}
改成这样可以
2011-06-02 09:05
hjywyj
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:3
帖 子:1114
专家分:2611
注 册:2010-4-14
收藏
得分:0 
程序代码:
int a[100],i,n;
a[0]=2;a[1]=3;
for(i=2;i<100;i++)
{n=a[i-2]*a[i-1];
e:if(n<10)
a[i]=n;
else
{while(n!=0)
{a[i++]=n/10;
n=n%10;
goto e;
}}}
for(i=0;i<50;i++)
printf("%5d",a[i]);
这个是楼主想要的不?
2011-06-02 09:46
fragileeye
Rank: 5Rank: 5
等 级:职业侠客
威 望:2
帖 子:107
专家分:387
注 册:2011-5-21
收藏
得分:5 
程序代码:
#include<stdio.h>

int  main()
{
    int i;
    int j;
    int n[100]={2,3};
    for(i = 2; i < 100; i++)
    {
          j = n[i-1]*n[i-2];
          if(j>9)
           {
               n[i]=j/10;
               if(i + 1 <= 99)
               {
                n[i+1]=j%10;       
               }
               else
               {
                   break;
               }
               i=i+1;
           }
           else
           {
            n[i] = j;       
           }
    }
   for(i=0;i<100;i++)
   printf("%-5d",n[i]);
   return 0;
}

操作数组不要越界,最好不要让编译器告诉你非法访问了。。

[ 本帖最后由 fragileeye 于 2011-6-2 10:19 编辑 ]
2011-06-02 10:17
wq553344
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2011-5-24
收藏
得分:0 
谢谢大家。。。呵呵 我整会了。。
2011-06-02 15:59
jinzhu0505
Rank: 2
等 级:论坛游民
帖 子:24
专家分:35
注 册:2010-10-16
收藏
得分:0 
#include<stdio.h>
#define SHU 100
void main()
{
int i;
int j;
int k;
int n[100]={2,3};
for(i=2;i<100;i++)
{
  j=n[i-1]*n[i-2];
  if(j<=9)
  
      n[i]=n[i-1]*n[i-2];//改过后位置
  else
  {
      n[i]=j/10;
      n[i+1]=j%10;
      i=i+1;
  }
  
   //n[i]=n[i-1]*n[i-2];原来位置
}
   for(i=0,k=1;i<100;i++,k++)
   {
        printf("%10d",n[i]);
       if(k%5==0)//输出换行
           printf("\n");
      
   }

}
2011-06-08 20:15
laoyang103
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:内蒙古包头
等 级:贵宾
威 望:19
帖 子:3082
专家分:11056
注 册:2010-5-22
收藏
得分:0 
程序代码:
#include<stdio.h>
#define SHU 100
void main()
{
int i;
int j;
int n[100]={2,3};
for(i=2;i<100;i++)
{
  j=n[i-1]*n[i-2];
  if(j>9)
   {
   n[i]=j/10;
   n[i+1]=j%10;
   i=i+1;
   continue;
   }
   n[i]=n[i-1]*n[i-2];
}
   for(i=0;i<100;i++)  
   printf("%2d",n[i]);

}

                                         
===========深入<----------------->浅出============
2011-06-08 21:57
快速回复:求大神给指正下。这段代码的错误
数据加载中...
 
   



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

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