码迷,mamicode.com
首页 > 其他好文 > 详细

内工大acm校赛--整理代码

时间:2015-04-18 17:30:19      阅读:131      评论:0      收藏:0      [点我收藏+]

标签:

题目:小明搜到一行无缩进无换行代码,请帮小明整理代码。无for语句和case语句,而且只有一个主函数。你只要控制注意“;”“{”“}”这三个符号带来的缩进和换行效果就行。

Input:

输入只有一行,无缩进无换行字符,字符不超过10000009个。文件尾结束。

Output:

规范的缩进和换行,增加和减少缩进都以四个空格为单位。

 

Sample Input:

int main(){int a,b,c;while(cin>>a>>b){if(a>b){c=a+b;cout<<c<<endl;}else{c=b-a;cout<<c<<endl;}}}

Sample Output:

int main()

{

  int a,b,c;

  while(cin>>a>>b)

  {

    if(a>b)

    {

      c=a+b;

      cout<<c<<endl;

    }

    else

    {

      c=b-a;

      cout<<c<<endl;

    }

  }

}

 

Hint

增加和减少缩进量都以四个空格为单位。

#include<stdio.h>
int main()
{
    int num = 0;
    int c;
    char *str = "    ";
    int i;
    int flag = 0;
    while((c = getchar())!=EOF)
    {
        if( c == { )
        {
            putchar(\n);
            for(i = 0; i < num ; i ++)
                printf("%s",str);
            putchar(c);
            num++;
            putchar(\n);
            flag = 1;
        }
        else if( c == } )
        {
            num--;
            for(i = 0; flag && i < num ; i ++)
                printf("%s",str);
            putchar(c);
            putchar(\n);
            flag = 1;
        }
        else if( c == ; )
        {
            for(i = 0; flag && i < num ; i ++)
                printf("%s",str);
            putchar(c);
            putchar(\n);
            flag = 1;
        }
        else if( c!=\n && c != \r)
        {
            for(i = 0; flag && i < num ; i ++)
                printf("%s",str);
            putchar(c);
            flag = 0;
        }
    }
    return 0;
}

 

内工大acm校赛--整理代码

标签:

原文地址:http://www.cnblogs.com/xuhuaiqu/p/4437685.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!