问题2784--代码格式化

2784: 代码格式化

时间限制: 1Sec 内存限制:128 MB
提交:341 解决:127
[ 状态] [ 讨论版] [ 提交] [命题人: ]
题目描述
学弟给了学长一份代码,让学长帮忙debug,可是这段代码却是这样的:


#include
int main(){int a,b;int c=a+b;printf("Hello world!\n");return 0;}


这段代码机器能看懂,但是学长看不懂。
这代码有两个问题:没有换行缩进,二元运算符附近没有空格。
显然这是一段未格式化的代码,将其格式化成符合要求的格式。花括号不包含嵌套的情况。
格式要求:
1. 需要换行
2. 四个空格作为一个缩进单位
3. 花括号{不换行,跟在前一个语句之后,但是隔开一个空格。
4. 二元运算符周围没有放空格,因为学弟的代码只包含=,+,-,*,/,%这六个二元运算符


格式化后的代码:


#include
int main() {
int a,b;
int c = a + b;
printf("Hello world!\n");
return 0;
}

输入
两行可以编译的但是格式不符合的要求的代码,一行为头文件(保证只有一个头文件),一行为主函数代码。代码的问题如上所述,代码长度小于1000。代码中的花括号只包含主函数中的一对。保证代码主函数中有语句。
注意:代码中不包含多余的分号。printf函数内不会出现花括号和二元运算符

输出
满足格式格式要求的代码
样例输入 Copy
#include int main(){int a, b;a=9900,b=99;int c=a+b;int d=1,e;int ans=a+b+c/d%a*a-89+e;return 0;}
样例输出 Copy
#include int main() { int a, b; a = 9900,b = 99; int c = a + b; int d = 1,e; int ans = a + b + c / d % a * a - 89 + e; return 0; }