Loading......Next.

生来介为忙一场

 

第六届itat C语言复赛~~~郁闷

第二题.........
a[742683613984]  删除8个数,使其变为最小的4位数~~
当时就写了思路就交了: 

从前面往后退,a[i]>=a[i+1],就删了a[i],如此重复
#include<stdio.h>
#include
<string.h>

void main()
{
  
char n[13]="742683613984";
  
int a[13],i,len,w=0,j;
  len
=strlen(n);
  
for(i=0;i<len;i++)
  
{
     a[i]
=n[i]-'0';
     printf(
"%d ",a[i]);
  }

  printf(
"\n");
  i
=0;
  
do
  
{
     
if(a[i]>a[i+1])
       
{
     printf(
"%d \n",a[i]);
     
for(j=i;j<len;j++)
        a[j]
=a[j+1];

     i
=0;
     w
++;
     len
--;
     
for(i=0;i<len;i++)
        
{
        printf(
"%d ",a[i]);
     }

     printf(
"\n");
     i
=0;
       }

       
else
      i
++;
  }
while(w<8);
  printf(
"\n");
}


posted on 2011-11-05 13:19 bersaty 阅读(460) 评论(2)  编辑 收藏 引用

评论

# re: 第六届itat C语言复赛~~~郁闷 2011-11-05 13:55 暗殿祭祀

你这段代码,只适合这个数,改了就错了!  回复  更多评论   

# re: 第六届itat C语言复赛~~~郁闷 2011-11-13 18:27 bersaty

@暗殿祭祀
那个题目就是针对这段数字的,唉,我越来越怀疑itat的实力了  回复  更多评论   


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理


导航

统计

常用链接

留言簿

随笔分类

随笔档案

友情链接

搜索

最新评论

阅读排行榜

评论排行榜