CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  C/C++ >  C语言

请教一道C语言题,简单!!

楼主Cathryn0000000(苹果雹冰oοО)2005-04-01 21:45:35 在 C/C++ / C语言 提问

输入N,输出如下图示的字符图形,如N=3时  
        1  
    1   2   1  
  1   3   3   1  
    1   2   1  
        1  
  我写的程序只有在N<=3时才正确,N=4就不对了,请高手指点 问题点数:50、回复次数:42Top

1 楼yangkun110(狼的传人)回复于 2005-04-01 21:48:48 得分 5

你的程序都没帖上来,怎么知道你什么地方错了   ?Top

2 楼Cathryn0000000(苹果雹冰oοО)回复于 2005-04-01 21:55:16 得分 0

不是帮我改错,是重写啊  
  哦,要是可以帮我改改也行  
  #include<stdio.h>  
  void   main(){  
  int   n,i,j;  
  printf("input   N:\n");  
  scanf("%d",&n);  
  printf("\n");  
  for(i=1;i<=n;i++){  
      for(j=n-2*i+2;j>0;j--)  
                printf("   ");  
      printf("1   ");  
      for(j=1;j<i;j++)  
                printf("%d   ",i);  
      if(i!=1)   printf("1\n");  
      else   printf("\n");  
  }  
  for(i=n-1;i>0;i--){  
      for(j=1;j<=n-2*i+2;j++)  
                printf("   ");  
      printf("1   ");  
      for(j=1;j<i;j++)  
                printf("%d   ",i);  
      if(i!=1)printf("1\n");  
      else   printf("\n");  
  }  
  }Top

3 楼Cathryn0000000(苹果雹冰oοО)回复于 2005-04-01 22:03:14 得分 0

请大家帮帮忙啊,谢谢了  
  Top

4 楼yangkun110(狼的传人)回复于 2005-04-01 22:10:06 得分 0

你能不能把N=5的图形打出来给我看看啊Top

5 楼Dijer(>龙龙<)回复于 2005-04-01 22:11:52 得分 0

N=4是什么样啊?  
          1  
      1   2   1  
    1   3   3   1  
  1   4   6   4   1  
    1   3   3   1  
      1   2   1  
          1  
  这个样么??Top

6 楼Cathryn0000000(苹果雹冰oοО)回复于 2005-04-01 22:15:16 得分 0

一样的啊,应该是这样的才对:  
            1  
        1   2   1  
      1   3   3   1  
    1   4   4   4   1  
  1   5   5   5   5   1  
    1   4   4   4   1  
      1   3   3   1  
        1   2   1  
            1  
  Top

7 楼yangkun110(狼的传人)回复于 2005-04-01 22:15:19 得分 0

龙龙,你能看出有什么规律吗?Top

8 楼yangkun110(狼的传人)回复于 2005-04-01 22:16:41 得分 0

哦,是这个样子啊  
    你等等啊Top

9 楼tianhxk(c++<>_JAVA(拒绝回答中文作为字段的问题))回复于 2005-04-01 22:38:16 得分 5

不能超过10   否则不对称  
  #include   <iostream>  
  #include<string>  
  using   namespace   std;  
   
  void   Print_hex(const   string   &   str)  
  {  
  int   i,len;  
  unsigned   char   ch;  
  len     =   str.size();  
  for(   i   =   0;i   <   len   ;i   ++   )  
  {  
  ch   =   str[i];  
  if(ch   <=   16)  
  cout<<'0'<<(char)(ch>9?(ch   -   10   +   'A'):(ch   +   '0'));  
  else  
  cout<<(char)(ch/16>9?(ch   /   16   -   10   +   'A'):(ch   /   16   +   '0'))   \  
  <<(char)(ch%16   >   9   ?(ch   %   16   -   10   +   'A'):(ch   %   16   +   '0'));  
  cout<<"   ";  
  if(   (   i   +   1   )   %   10   ==   0     )  
  cout<<endl;  
  }  
  cout<<endl;  
  }  
   
   
  int   main()  
  {  
  int   i,j,all,n;  
  while(   1   )  
  {  
  cin   >>   n;  
  if(   n   ==   0)  
  break;  
  if(   n   ==   1)  
  {  
  cout<<1<<endl;  
  cout<<1<<endl;  
  }  
  else  
  {        
  all   =   n   ;  
  for(   j   =   0   ;j   <   all   ;j++)  
  cout   <<   "   ";  
  cout   <<   1   <<   endl;  
  all   -=   2;  
  i   =   2   ;  
  while(   i   <=   n   )  
  {  
  for(   j   =   0   ;j   <   all   ;j   ++   )  
  cout   <<   "   ";  
  cout   <<   1   <<   "   ";  
  for(j   =   1   ;   j   <   i   ;   j++)  
  cout   <<i   <<   "   ";  
  cout   <<   1   <<endl;  
  i   ++   ;  
  all   --;  
  }  
  i   -=   2;  
  all   +=   2;  
  while   (   i   >=   2)  
  {  
  for   (   j   =   0   ;j   <   all   ;j   ++   )  
  cout   <<   "   ";  
  cout   <<   1   <<   "   ";  
  for(   j   =   1   ;   j   <   i   ;j++)  
  cout   <<   i   <<   "   ";  
  cout   <<   1   <<   endl;  
  i   --   ;  
  all   ++   ;  
  }  
  all   =   n   ;  
  for   (   j   =   0   ;j   <   n   ;j++)  
  cout<<   "   "   ;  
  cout   <<   1<<endl;  
  }  
   
  }  
  return   0;  
  }Top

10 楼Cathryn0000000(苹果雹冰oοО)回复于 2005-04-01 22:47:29 得分 0

tianhxk的太复杂了吧,也不太一样啊  
  这是今天复试的三道上机题中的一道,还有一道是四则运算表达式(不含括号)求值,总共只给一个小时,哎~~~好BT啊Top

11 楼tianhxk(c++<>_JAVA(拒绝回答中文作为字段的问题))回复于 2005-04-01 22:48:00 得分 0

第一个函数不用的,忘记拿掉了  
  #include   <stdio.h>  
  int   main()  
  {  
  int   i,j,n;  
  while(   1   )  
  {  
  scanf("%d",&n);  
  if(   n   ==   0)  
  break;  
  if(   n   ==   1)  
  printf("1\n1\n");  
  else  
  {        
  for(   j   =   0   ;j   <   n   ;j++)  
  printf("   ");                   //输出1时空格数为n个  
  printf("1\n");                       //然后输出1回车  
  i   =   2   ;  
  while(   i   <=   n   )         //以后每个数开头的空格为n   -   i     i   为当前数  
  {  
  for(   j   =   0   ;j   <   n   -   i   ;j   ++   )  
  printf("   ");  
  printf("1   ");  
  for(j   =   1   ;   j   <   i   ;   j++)  
  printf("%d   ",i);  
  printf("1\n");  
  i   ++   ;  
  }  
  i   -=   2;  
  while   (   i   >=   2)  
  {  
  for   (   j   =   0   ;j   <   n   -   i   ;j   ++   )  
  printf("   ");  
  printf("1   ");  
  for(   j   =   1   ;   j   <   i   ;j++)  
  printf("%d   ",i);  
  printf("1\n");  
  i   --   ;  
  }  
  for   (   j   =   0   ;j   <   n   ;j++)  
  printf("   ");  
  printf("1\n");  
  }  
   
  }  
  return   0;  
  }Top

12 楼tianhxk(c++<>_JAVA(拒绝回答中文作为字段的问题))回复于 2005-04-01 22:53:01 得分 0

对你的程序进行一点修改后就好了,修改出已经作出说明,我要分的哦  
  /*#include   <stdio.h>  
  int   main()  
  {  
  int   i,j,n;  
  while(   1   )  
  {  
  scanf("%d",&n);  
  if(   n   ==   0)  
  break;  
  if(   n   ==   1)  
  printf("1\n1\n");  
  else  
  {        
  for(   j   =   0   ;j   <   n   ;j++)  
  printf("   ");                   //输出1时空格数为n个  
  printf("1\n");                       //然后输出1回车  
  i   =   2   ;  
  while(   i   <=   n   )         //以后每个数开头的空格为n   -   i     i   为当前数  
  {  
  for(   j   =   0   ;j   <   n   -   i   ;j   ++   )  
  printf("   ");  
  printf("1   ");  
  for(j   =   1   ;   j   <   i   ;   j++)  
  printf("%d   ",i);  
  printf("1\n");  
  i   ++   ;  
  }  
  i   -=   2;  
  while   (   i   >=   2)  
  {  
  for   (   j   =   0   ;j   <   n   -   i   ;j   ++   )  
  printf("   ");  
  printf("1   ");  
  for(   j   =   1   ;   j   <   i   ;j++)  
  printf("%d   ",i);  
  printf("1\n");  
  i   --   ;  
  }  
  for   (   j   =   0   ;j   <   n   ;j++)  
  printf("   ");  
  printf("1\n");  
  }  
   
  }  
  return   0;  
  }*/  
  #include<stdio.h>  
  void   main(){  
  int   n,i,j;  
  printf("input   N:\n");  
  scanf("%d",&n);  
  //printf("\n");             //去掉  
  for(i=1;i<=n;i++){  
      for(j=n-i;j>0;j--)       //你原来的为for   (j   =   n   -   2*i   +   2;   j   >   0   ;j   --)  
  printf("   ");  
      if   (   i   ==   1)                 //1为特例  
      printf("   ");  
      printf("1   ");  
      for(j=1;j<i;j++)  
                printf("%d   ",i);  
      if(i!=1)   printf("1\n");  
      else   printf("\n");  
  }  
  for(i=n-1;i>0;i--){  
      for(j=1;j<=n-i;j++)  
                printf("   ");  
      if(   i   ==   1)  
      printf("   ");  
   
      printf("1   ");  
      for(j=1;j<i;j++)  
                printf("%d   ",i);  
      if(i!=1)printf("1\n");  
      else   printf("\n");  
  }  
  }  
  Top

13 楼tianhxk(c++<>_JAVA(拒绝回答中文作为字段的问题))回复于 2005-04-01 22:56:03 得分 5

每次都是多粘,真郁闷  
  #include<stdio.h>  
  void   main(){  
  int   n,i,j;  
  printf("input   N:\n");  
  scanf("%d",&n);  
  //printf("\n");             //去掉  
  for(i=1;i<=n;i++){  
      for(j=n-i;j>0;j--)       //你原来的为for   (j   =   n   -   2*i   +   2;   j   >   0   ;j   --)  
  printf("   ");  
      if   (   i   ==   1)                 //1为特例  
      printf("   ");  
      printf("1   ");  
      for(j=1;j<i;j++)  
                printf("%d   ",i);  
      if(i!=1)   printf("1\n");  
      else   printf("\n");  
  }  
  for(i=n-1;i>0;i--){  
      for(j=1;j<=n-i;j++)  
                printf("   ");  
      if(   i   ==   1)  
      printf("   ");  
   
      printf("1   ");  
      for(j=1;j<i;j++)  
                printf("%d   ",i);  
      if(i!=1)printf("1\n");  
      else   printf("\n");  
  }  
  }  
  Top

14 楼yangkun110(狼的传人)回复于 2005-04-01 23:00:05 得分 0

老兄,这个问题有点棘手啊,   我得好好想想Top

15 楼qqfig()回复于 2005-04-01 23:00:25 得分 0

不会吧,N=4时应该是  
          1  
      1   2   1  
    1   3   3   1  
  1   4   6   4   1  
    1   3   3   1  
      1   2   1  
          1  
  这是杨辉三角的对称扩充。要是是  
            1  
        1   2   1  
      1   3   3   1  
    1   4   4   4   1  
      1   3   3   1  
        1   2   1  
            1  
   
  这样就没有什么意思了!!!  
  Top

16 楼yangkun110(狼的传人)回复于 2005-04-01 23:02:10 得分 0

楼上,这么代码啊,能不能   浓缩点啊Top

17 楼tianhxk(c++<>_JAVA(拒绝回答中文作为字段的问题))回复于 2005-04-01 23:04:04 得分 0

那是楼主要求的,就算你要求杨辉三角,一旦超过10就失去对称性了,也没什么意思,这道题的N<10,如果杨辉三角,N将更小Top

18 楼tianhxk(c++<>_JAVA(拒绝回答中文作为字段的问题))回复于 2005-04-01 23:07:25 得分 0

我贴出来的最后一个就是比较短的程序,其余的都是带上了其他没有用的函数或者注释掉的程序,Top

19 楼du51(郁郁思扬)回复于 2005-04-01 23:16:30 得分 5

#include<iostream>  
  using   namespace   std;  
  void   print(int   n)  
  {  
          int   i=0,j=0;  
          for(i=0;i<n;i++)cout<<"   ";cout<<1<<endl;  
          for(i=1;i<n;i++)  
          {    
                  for(j=1;j<n-i;j++)cout<<"   ";  
                  cout<<1<<"   ";  
                  for(j=0;j<i;j++)cout<<i+1<<"   ";    
                  cout<<1;  
                  cout<<endl;  
          }  
          for(i=2;i<n;i++)  
          {  
                  for(j=0;j<i-1;j++)cout<<"   ";cout<<1<<"   ";  
                  for(j=1;j<n-i+1;j++)cout<<n-i+1<<"   ";  
                  cout<<1;  
                  cout<<endl;  
          }          
          for(i=0;i<n;i++)cout<<"   ";cout<<1<<endl;  
  }  
  int   main()  
  {  
          int   n;  
          cin>>n;  
          print(n);  
          system("PAUSE");  
          return   0;  
  }Top

20 楼du51(郁郁思扬)回复于 2005-04-01 23:17:20 得分 5

这个应该是最直观的了.也不长.呵呵.Top

21 楼du51(郁郁思扬)回复于 2005-04-01 23:19:37 得分 0

完全符合楼主的要求.呵呵.分来.Top

22 楼Cathryn0000000(苹果雹冰oοО)回复于 2005-04-01 23:28:25 得分 0

也有可能是要求杨辉三角,我也不清楚,555Top

23 楼Cathryn0000000(苹果雹冰oοО)回复于 2005-04-01 23:29:19 得分 0

算了,结贴算了,反正都考完了...Top

24 楼yangkun110(狼的传人)回复于 2005-04-01 23:31:50 得分 0

#include<stdio.h>    
  main()  
  {  
        int   i,j,k,m,n;  
        printf("n=");  
        scanf("%d",&n);  
        for(k=1;k<=n;k++)  
        printf("   ");  
          printf("1\n");  
        for(i=2;i<=n;i++)  
        {  
                  for(j=i;j<n;j++)  
        printf("   ");  
        printf("1   ");  
        for(m=2;m<=i;m++)  
        printf("%d   ",i);  
        printf("1\n");  
        }  
  }Top

25 楼yangkun110(狼的传人)回复于 2005-04-01 23:33:53 得分 0

呵呵,写了一半Top

26 楼yangkun110(狼的传人)回复于 2005-04-01 23:57:14 得分 5

#include<stdio.h>    
  tt(int   u)  
  {        
  int   k;  
  for(k=1;k<=u;k++)  
        printf("   ");  
          printf("1\n");  
  }  
  aa(int   i,int   u)  
  {        
        int   j,m;  
        for(j=i;j<u;j++)  
        printf("   ");  
        printf("1   ");  
        for(m=2;m<=i;m++)  
        printf("%d   ",i);  
        printf("1\n");    
  }  
  main()  
  {  
        int   i,n;  
        printf("n=");  
        scanf("%d",&n);  
        tt(n);  
        for(i=2;i<=n;i++)  
        aa(i,n);  
        for(i=n-1;i>=2;i--)  
        aa(i,n);  
  tt(n);  
  }  
  哈哈,OK了  
  虽然慢了些,但还是成功了。Top

27 楼vagrant__82(谢国庆)回复于 2005-04-02 00:54:12 得分 5

经过调试,输出完全正确的程序。供参考!  
   
  #include   <stdio.h>  
  #include   <stdlib.h>  
  #include   <math.h>  
   
  void   print(unsigned   int   line);  
   
  int   main(int   argc,   char   *argv[])  
  {  
      unsigned   int   LineNum;  
      printf(   "\r\n   Pls   input   the   line   number   wanted   to   print!\r\n"   );  
      scanf(   "%u",   &LineNum   );  
      if   (   LineNum   >=   10   )  
      {  
              printf(   "\r\n   you   should   input   a   integer   between   1   and   9"   );  
              return   1;  
      }  
      print(   LineNum   );  
      printf(   "\r\n"   );  
      system("PAUSE");  
      return   0;  
  }  
   
   
  void   print(unsigned   int   line)  
  {  
          int   i   =   0;  
          int   j   =   0;  
          int   k   =   0;  
          int   lineIndex   =   2;  
          /*   first   print   the   first   line   ,because   it   is   not   same   as   other     */  
          for   (   i   =   0;   i   <   line;   i++   )  
          {  
                  printf(   "   "   );  
          }  
          printf(   "1\r\n"   );  
           
          if   (   line   ==   1   )  
          {  
                  return;  
          }  
           
          /*   now   print   the   middle   lines   periodicly   */  
          for   (   i   =   (int)(2-line);   i   <=   (int)(line-2);   i++   )  
          {  
                  lineIndex   =(int)(line   -   abs(i));  
                  for(   j   =   0;   j   <   (line-lineIndex);   j++   )  
                  {  
                          printf(   "   "   );  
                  }  
                  printf(   "1"   );  
                  for   (   k   =   (int)(1-lineIndex);   k   <=   (int)(lineIndex-1);   k++   )  
                  {  
                          if   (   (abs(k)%2)   ==   (   (lineIndex-1)%2   )   )  
                          {  
                                  printf(   "   "   );  
                          }  
                          else  
                          {  
                                  printf(   "%d",   lineIndex   );  
                          }  
                  }  
                  printf(   "1\r\n"   );  
                  /*   record   the   line   number   printing   now   */  
                  //lineIndex++;    
          }                                                  
                   
          /*   now   it   is   time   to   print   the   last   "1"   */  
          for   (   i   =   0;   i   <   line;   i++   )  
          {  
                  printf(   "   "   );          
          }  
          printf(   "1"   );  
  }Top

28 楼david_wrt(沧海一声笑)回复于 2005-04-02 16:33:07 得分 5

楼上的,用行着那么麻烦么?  
  //include   "stdafx.h"  
   
  int   main(int   argc,   char*   argv[])  
  {  
          int   i,j,n,a;  
         
          printf("please   input   n:");  
          scanf("%d",&n);  
          printf("\n");  
   
          for   (   i   =   1;   i   <   2*n;   i++)//共有2n-1行  
          {  
                  if   (   (i   ==   1)||(i==   2*n-1))//上下两端  
                  {  
                          for   (j   =   0;   j   <   n;   j++)   printf("   ");//输出空格  
                          printf("1\n");//上下两端只输出一个“1”  
                          continue;  
                    }  
                  if   (   i   <=   n   )//第二行到第n行  
                  {  
                          a   =   i;//要输出的数字  
                          for(   j   =   0;   j   <   n-1;   j++   )   printf("   ");   printf("1   ");//左边的“1”  
                          for(   j   =   0l   j   <   a-1;   j++   )   printf("%d   ",a);//中间的数字  
                          printf("1\n");//右边的"1"  
                  }  
                  else   //第n+1到第2n-2行  
                  {  
                          a   =   2*n-i//要输出的数字  
                          for   (   j   =   0;   j   <   i-n;   j++)printf("   ");printf("1   ");//左边的“1”  
                          for   (   j   =   0;   j   <   a-1;   j++)printf("%d   ",a);//中间的数字  
                          printf("1\n");  
                  }  
            }//全部输出  
            getchar();  
            return   0;  
  }Top

29 楼david_wrt(沧海一声笑)回复于 2005-04-02 16:35:03 得分 0

也用不着调来调去的Top

30 楼FreeFice(庄鱼)回复于 2005-04-02 17:19:28 得分 5

#include<stdio.h>  
  void   main(){  
  int   n,i,j;  
  printf("input   N:\n");  
  scanf("%d",&n);  
  printf("\n");  
  for(i=1;i<=n;i++){  
      for(j=2*(n-i);j>0;j--)//-------------------  
                printf("   ");  
      printf("1   ");  
      for(j=1;j<(i-1)*2;j++)//-------------------  
                printf("%d   ",i);  
      if(i!=1)   printf("1\n");  
      else   printf("\n");  
  }  
  for(i=n-1;i>0;i--){  
      for(j=1;j<=2*(n-i);j++)//------------------  
                printf("   ");  
      printf("1   ");  
      for(j=1;j<(i-1)*2;j++)//------------------  
                printf("%d   ",i);  
      if(i!=1)printf("1\n");  
      else   printf("\n");  
  }  
  }  
  原程序改动Top

31 楼FreeFice(庄鱼)回复于 2005-04-02 17:36:42 得分 0

#include<stdio.h>  
  void   main(){  
  int   n,i,j;  
  printf("input   N:\n");  
  scanf("%d",&n);  
  printf("\n");  
  for(i=1;i<=n;i++){  
      for(j=2*(n-i);j>0;j-=2)//-------------------  
                printf("   ");  
      if(i==1)printf("   1");     //-------------------  
      else   printf("1   ");           //-------------------  
      for(j=1;j<(i-1)*2;j+=2)//-------------------  
                printf("%d   ",i);  
      if(i!=1)   printf("1\n");  
      else   printf("\n");  
  }  
  for(i=n-1;i>0;i--){  
      for(j=1;j<=2*(n-i);j+=2)//------------------  
                printf("   ");  
      if(i==1)printf("   1");     //------------------  
      else   printf("1   ");           //------------------  
      for(j=1;j<(i-1)*2;j+=2)//------------------  
                printf("%d   ",i);  
      if(i!=1)printf("1\n");  
      else   printf("\n");  
  }  
  }  
  完全按照图形改动原程序Top

32 楼alwanv(苏永邦;;;春天,我把老婆埋了;夏天,我就有好多老婆了。)回复于 2005-04-02 20:06:34 得分 0

哈哈,我输入10就变成这样了。。根据楼主的代码实现的:  
                      1                                                        
                  1   2   1                                                    
              1   3   3   1                                                    
          1   4   4   4   1                                                    
      1   5   5   5   5   1                                                    
  1   6   6   6   6   6   1                                                    
  1   7   7   7   7   7   7   1                                                
  1   8   8   8   8   8   8   8   1                                            
  1   9   9   9   9   9   9   9   9   1                                        
  1   10   10   10   10   10   10   10   10   10   1                  
  1   9   9   9   9   9   9   9   9   1                                        
  1   8   8   8   8   8   8   8   1                                            
  1   7   7   7   7   7   7   1                                                
  1   6   6   6   6   6   1                                                    
      1   5   5   5   5   1                                                    
          1   4   4   4   1                                                    
              1   3   3   1                                                    
                  1   2   1                                                    
                      1                                                        
  Top

33 楼buguty(系统级别)回复于 2005-04-02 20:57:37 得分 0

其实很简单的一个程序怎么!·~#?·%#¥%?¥?……¥%……—?Top

34 楼zhaodan23(灵山城主)回复于 2005-04-02 21:51:01 得分 0

期待Top

35 楼cao12m(★草上飞★)回复于 2005-04-02 21:57:16 得分 0

杨辉三角阵   算法比较简单就是生成有点难啊   我不太会控制Top

36 楼dream2013(每个人都有魔鬼的一面( http://blog.sina.com.cn/u/1422260677 ))回复于 2005-04-02 23:11:41 得分 0

mark,有时间在写Top

37 楼woodcord(我心飞翔)回复于 2005-04-03 07:27:21 得分 0

我觉得应该是问杨辉三角的问题!!!Top

38 楼FreeFice(庄鱼)回复于 2005-04-03 11:32:49 得分 0

杨辉三角形?  
              1  
            1   1  
          1   2   1  
        1   3   3   1  
  ...这样才是!楼主的是  
              1  
          1   2   1  
        1   3   3   1  
  ...愣比上面少了一层,天知道他的算法依据是什么,只能根据他的图形给出答案Top

39 楼QunKangLi(心里面疼得有点发酸 一定是有雾来了 打湿了我的眼眶)回复于 2005-04-03 11:45:05 得分 0

#define   N   10  
  void   print(   int   n   )  
  {  
  static   char   *P[N]   =   {    
  "\n",    
  "1\n",  
  "   1\n"   /*注意有无逗号可是大有区别的~~~*/  
  "1   1\n"  
  "   1\n",    
   
  ..../*列出1到10的字符串即可,嘿嘿~~~~*/  
  }   ;  
      puts(   n   >=   0   &&   n   <   N   ?   P[n]   :   "sorry..."   )   ;  
  }  
  虽然有最大N的限制,编码也太无味了些,不过,不相信有比这更快的算法!Top

40 楼dongfei(风月无影)回复于 2005-04-03 11:49:51 得分 0

markTop

41 楼hanyaocsdn()回复于 2005-04-03 12:20:33 得分 0

markTop

42 楼sangxiaoqiang(我是一只小虾米)回复于 2005-04-04 01:17:33 得分 5

上面的程序都太麻烦了,注意:技巧,在处理这种类型的题时,首先应该注意上下左右对称的东东,可以使用数组将其数字先写入二维数组,最后输出数组即可,数组的定义:  
  #define   num[2*n-2][4*n-7],这个程序,不知对于N为5以上是如何,我推出了这个公式  
  这种程序的扩充性很好,仅需要根据n填充数组Top

相关问题

  • C语言简单问题
  • 寻找c,c++语言,简单问题
  • 简单C语言字符串问题
  • 一个简单的C语言问题
  • 简单的C语言的问题:
  • 很简单的问题(C语言)
  • 简单的C语言指会问题!
  • 几个简单的c语言问题!
  • C语言最简单的问题
  • c语言超级简单的问题

关键词

  • printf
  • scanf
  • linenum
  • print
  • main
  • input
  • unsigned
  • ch
  • line
  • break

得分解答快速导航

  • 帖主:Cathryn0000000
  • yangkun110
  • tianhxk
  • tianhxk
  • du51
  • du51
  • yangkun110
  • vagrant__82
  • david_wrt
  • FreeFice
  • sangxiaoqiang

相关链接

  • C/C++ Blog
  • C/C++类图书
  • C/C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo