当前位置: 首页 > news >正文

C语言的基本编写规范你了解吗

基本编写规范

规范是一种规定,它是一种人为的、约定成俗的,即使不按照那种规定也不会出错,这种规定就叫作规范。虽然我们不按照规范也不会出错,但是那样代码写得就会很乱。如果你养成一种非常不好的写代码的习惯,代码写得乱七八糟,等到将来工作面试的时候,这样的习惯可能会让你失去机会。

一、代码规范化的好处

看着整齐舒服,逻辑清楚,条理清晰。假如你现在用不规范的方式写了一万行代码,现在能看得懂,但等过了三个月你再回头看时就很吃力了,更不要说给别人看了。所以代码要写规范。规范的代码不容易使程序出错,即使出错了查错也会很方便。如果按照不规范的格式输入代码的话,很容易出错。格式虽然不会影响程序的功能,但会影响可读性。程序的格式追求清晰、美观,是程序风格的重要构成元素。

规范的代码

约瑟夫环

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

#include <stdio.h>

#define N 100

intmain()

{

intn,m=3,s=1;//n:总人数,m:报数值,s报数人的起始编号

scanf("%d",&n);

inta[N] = {0};//数组初始化

inti,j;

for(i = 0; i < n; i++)//数组遍历

{

a[i] = i+1;//i是数组的位置量,a[i]是每个人的原始编号(从1开始)

}

i=s-1;//数组的起点(0)

while(n > 1)

{

i = (i+m-1) % n;//出圈的人在数组中的位置

for(j = i+1; j < n; j++)

{

a[j-1] = a[j];

}

n--;//出局1人后,总人数-1

if(i == n)//终点后,开始起点(围成一个圈)

{

i = 0;

}

}

printf("%d\n", a[i]);//输出留下的人的原始编号

return0;

}

不规范的代码

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

#include<stdio.h>int main(void){int n,u,d,s,t;s=0;t=0;scanf("%d%d%d",&n,&u,&d);if(u>=n) printf("1");else{do{s=s+u;t++;if(s>=n)break;else{s=s-d;t++;}}while(s<=n);printf("%d",t);}}#include<stdio.h>

intmain(void){intn,u,d,s,t;s=0;

t=0;

scanf("%d%d%d",&n,&u,&d);

if(u>=n)printf("1");

else{

do{s=s+u;t++;

if(s>=n)break;

else

{

s=s-d;

t++;}

}while(s<=n);

printf("%d",t);}

}

二、规范目的与基本规则

1.目的

可移植性、连贯、整洁、易于维护、易于理解、简洁

2.基本原则

1.空行

空行起着分隔程序段落的作用。空行得体将使程序的布局更加清晰。空行不会浪费内存。

规则一:定义变量后要空行。尽可能在定义变量的同时初始化该变量。

规则二:每个函数定义结束之后都要加空行。

规则三:两个相对独立的程序块、变量说明之后必须要加空行。比如上面几行代码完成的是 一个功能,下面几行代码完成的是另一个功能,那么它们中间就要加空行。这样看起来更清晰。

2.空格

规则一:关键字之后要留空格。像 const、case 等关键字之后至少要留一个空格,否则无法辨析关键字。像 if、for、while 等关键字之后应留一个空格再跟左括号(,以突出关键字。

规则二:函数名之后不要留空格,应紧跟左括号(,以与关键字区别。

规则三(后不打空格;),;这三个前不打空格。

规则四,之后要留空格。如果;不是一行的结束符号,其后要留空格。

规则五:赋值运算符、关系运算符、算术运算符、逻辑运算符、位运算符,如 =、==、!=、+=、-=、*=、/=、%=、>>=、<<=、&=、=、|=、>、<=、>、>=、+、-、*、/、%、&、|、&&、||、<<、>>、 等双目运算符的前后应当加空格。

注意,%d 中的“%”前后不用加空格。

规则六单目运算符!、~、++、--、-、*、& 等前后不加空格。

规则七:像数组符号[]、结构体成员运算符.、指向结构体成员运算符->,这类操作符前后不加空格。

规则八:对于表达式比较长的 for 语句和 if 语句,为了紧凑起见,可以适当地去掉一些空格。但 for 和 if 后面紧跟的空格不可以删,其后面的语句可以根据语句的长度适当地去掉一些空格。例如:
for (i=0; i<10; i++); //for 和分号后面保留空格就可以了,=和<前后的空格可去掉。


http://www.jsqmd.com/news/728542/

相关文章:

  • 终极指南:3分钟实现Adobe Illustrator到Photoshop的无损图层转换
  • 5G协议栈里的‘时钟’:深入理解SMTC如何同步服务小区与邻区的SSB
  • 别再用WebSocket硬扛LLM!Swoole原生StreamChannel+自定义协议实现毫秒级上下文保持(延迟降低62%,资源占用下降81%)
  • 昆明德飞科技:2026年4月更新,玉溪专业车载台批发与一站式通信解决方案服务商 - 2026年企业推荐榜
  • 2026年4月石家庄鹿泉高端系统入户门选购聚焦:乔格门窗销售有限公司的硬核实力解析 - 2026年企业推荐榜
  • 别再傻傻分不清了!伺服电机脉冲控制(AB相/脉冲+方向/CW-CCW)到底怎么选?
  • 2026年第二季度成都废旧物资回收实力公司盘点:邦捷再生资源领衔推荐 - 2026年企业推荐榜
  • C语言学习笔记01
  • 如何彻底告别网盘限速:八大平台直链下载加速完全指南
  • Win10/Win11系统下,一次搞定Ensp AR路由器启动(避坑防火墙、杀软和中文路径)
  • 观察Taotoken用量看板如何帮助团队精细化控制AI成本
  • EMQX设备状态监控的三种姿势:系统主题、规则引擎与API,我该选哪个?
  • BA版本 - MKT
  • 航空电子模块RAR15-XMC:多协议集成与SWaP优化
  • Stata实操:手把手教你做面板数据的固定效应与随机效应模型(附代码与豪斯曼检验)
  • 2026年Q2台州塑料皮垫技术革新厂商盘点:一体化模内贴标引领新趋势 - 2026年企业推荐榜
  • 2026现阶段餐饮外卖保温袋选购指南:为何云南绿象环保科技是源头优选? - 2026年企业推荐榜
  • 从CPU供电到LED调光:拆解主板与常见小家电里的MOS管,看懂它的真实工作场景
  • 2026年4月温州注塑机维修与可靠制造厂甄选指南:聚焦永生塑机综合服务实力 - 2026年企业推荐榜
  • 你的控制图真的“受控”吗?Minitab特殊原因检验全解析与避坑指南
  • 观察同一任务在不同模型间的Token消耗差异以优化成本
  • PCB原型制造质量对电子产品开发的关键影响
  • 2026年广西市场深度解析:值得关注的电缆桥架厂家推荐 - 2026年企业推荐榜
  • 告别“mysqld不是内部命令”:深度解析Windows环境变量与MySQL服务启动的坑
  • Sunshine游戏串流技术指南:构建跨设备游戏体验的自托管解决方案
  • 2026年4月温州马克笔定制实力厂家全方位解析:硬核工厂如何赋能品牌增长 - 2026年企业推荐榜
  • 别再死记硬背ODS/DWD/DWS/ADS了!用FineDataLink手把手教你搭建一个可用的数仓分层(附实战配置)
  • 2026年4月临沧保洁服务公司推荐:这家全业态服务商为何口碑出众? - 2026年企业推荐榜
  • 使用 Taotoken 为 OpenClaw Agent 工作流提供稳定模型支持
  • 他山之石,可以攻玉。