首先我们来看一下下面这段代码
#include<stdio.h>
int main()
{
int divisor;
int n;
scanf("%d",&n);
if(n==2)
{
printf("YES\n");
}
for(divisor=3; divisor<n;divisor+=2)
{
if(n%divisor==0)
{
printf("NO\n");
break;
}
printf("YES\n");
}
return 0;
}
是不是觉得这个代码没什么问题,也挺好看的?但有没有觉得这样的代码挺乱的?应该不难发现,有些空格的地方,这代码没有空格,而又在有些地方加了很多个空格,是不是很怪异?
从代码风格的角度,程序中有哪些地方必须要使用空格呢?主要有以下4点:
- +,-,>,==,|,&&等前后都需要参加运算的运算符号前后;
- if,switch,for,while等关键字、函数定义名和之后的左小括号之间;
- 不在行尾的逗号、分号之后;
- 不加空格会导致不符合语法的情况下(例如 return 之后);
举例子来说,上面那段代码中
- if(n==2)就应该被写成if (n == 2);
- n%divisor==0就应该被写成n % divisor == 0;
除了必须空格来保证可读性的地方外,还有一些地方是可以选择空格的:
- 左大括号前、右大括号后
- #include和头文件、被引入文件之间
- 非运算符冒号之后
再有一点,就是不要额外的写空格:
- return 0;这中间连续多出来的空格就是不合适的,我们应该只保留一个空格return 0;
下面来看一下修改了之后的代码:
#include <stdio.h>
int main()
{
int divisor;
int n;
scanf("%d", &n);
if (n == 2)
{
printf("YES\n");
}
for (divisor=3; divisor<n; divisor += 2)
{
if (n % divisor == 0)
{
printf("NO\n");
break;
}
printf("YES\n");
}
return 0;
}
再回头比较一下两段代码,是不是下面这一段看起来更舒服呢
更多推荐
C语言入门学习——如何在程序中使用空格
发布评论