‘壹’ c程序在书写时有严格的缩进要求否则不能编译通过
所有的c语言编译器是没有这样的规定的。C语言本身是一种非常灵活的编程语言,包括它的书写格式和语法表达。C语言每一个语句都是以“;”结束,只要遵循这个原则即可,并没有强制要求必须以缩进方式编写程序,也不影响程序的编译。通常以缩进方式编写程序是一种比较提倡的好的习惯和做法,有利于对程序的理解和检查。
‘贰’ 用C语言编程中,一般的格式是怎样的
C语言源程序的编程格式归纳如下: 1,强制性规则 1,一个C语言源程序必须有且只有一个MAIN函数. 2,函数名后必须紧跟圆括号对,函数体放在右圆括号")"后的花括号对"{}"中. 3,每个程序体(包括函数的函数体,含有多条语句的选择结构和循环结构中的语句序列)必须用一对花括号括起来. 4,文件包含预处理命令,#INCLUDE<*.H>应置于源程序的开始位置. 5,语句未尾必须有分号,而预处理命令和函数首部的未尾及右花括号之后不要分号. 6,同一字母大,小写意义不同,关键字和标准库函数名必须用小写. 7,变量必须先定义,后使用 8,除已有明显间隔符外,标识符,关键字之间必须有至少一个空格 9,注解必须包含在"/* */符号之间 我想你想要知道的是C语言的四种程序结构吧 如下:1,分支语句格式 ①if(条件) {分支体} 这种分支结构中的分支体可以是一条语句,此时“{}”可以省略,也可以是多条语句即复合语句。它有两条分支路径可选,一是当条件为真,执行分支体,否则跳过分支体,这时分支体就不会执行。如:要计算x的绝对值,根据绝对值定义,我们知道,当x>=0时,其绝对值不变,而x<0时其绝对值是为x的反号,因此程序段为:if(x<0)x=-x; ②if(条件) {分支1} else {分支2} ③IF嵌套分支语句:其语句格式为: if(条件1) {分支1} else if(条件2) {分支2} else if(条件3) {分支3} …… else if(条件n) {分支n} else {分支n+1} FOR嵌套,其语句格式为: for(初值A;范围A;步长A) { for(初值B;范围B;步长B) { 循环体 } } FOR嵌套例子:九九乘法表 main()这里是主程序的编程格式,你参考下 { int a,b,c; for(a=1;a<=9;a++) { for(b=1;b<=a;b++) { c=b*a; printf("%dx%d=%d ",b,a,c); } printf("\n"); } }
‘叁’ C语言的格式特点是什么
1、习惯用小写字母,大小写敏感
2、不适用行号符,无程序行概念
3、可使用空行和空格
4、常用锯齿形书写格式
‘肆’ C语言的基本格式是什么
如:
1.#include<stido >
“
引入头文件(主要引入函数库,如stdio.h;数学函数”)
2. int main(void ) {
“
主函数必须是小写的(程序唯一入口,前面的int、void等都可省略,但“括号”不能。大括号内包含的内容为程序主体”
Int num = 10
3.printf(“会好的”);
Printf(“我今年%d岁了\n”,num);
“\n:表示换行;%d表示在这里带入定义的函数num =
10,所以后面必须跟‘num’这个标识符”
}
首先,在程序中注意一些小问题。
1.程序要在英文输入法的界面输入,不然程序会报警。
2.程序的格式要有一定的层次关系。
3.在定义函数(标识符)时注意不要选择了关键字。最好在“=”两边都空一格。
4.在定义函数时注意数据类型的取值范围。如:
整型
[signed]int
-2147483648~+2147483648
无符号整型
unsigned[int]
0~4294967295
短整型 short
[int] -32768~32768
无符号短整型
unsigned
short[int]
0~65535
长整型 Long
int
-2147483648~+2147483648
无符号长整型 unsigned
[int]
0~4294967295
字符型[signed]
char
-128~+127
无符号字符型 unsigned
char
0~255
单精度
float
3.4 x 10^(-38)~ 3.4 x
10^(+38)
双精度
double
1.7 x 10^(-308)~ 1.7 x
10^(+308)
长双精度 long
double 1.7
x 10^(-308)~ 1.7 x
10(+308)
‘伍’ c语言代码编写的格式
C语言 程序代码编写规范
(初级程序员 讨论版)
前言
一个好的程序编写规范是编写高质量程序的保证。清晰、规范的源程序不仅仅是方便阅读,更重要的是能够便于检查错误,提高调试效率,从而最终保证软件的质量和可维护性。
说明
l 本文档主要适用于刚刚开始接触编程的初学者。
l 对于具有一定工程项目开发经验的程序员,建议学习C语言程序代码编写规范—高级版。
目录
1 代码书写规范
2 注释书写规范
3 命名规范
4 其它一些小技巧和要求
1 代码书写规范
1.1函数定义
花括号: { }
每个函数的定义和说明应该从第1列开始书写。函数名(包括参数表)和函数体的花括号应该各占一行。在函数体结尾的括号后面可以加上注释,注释中应该包括函数名,这样比较方便进行括号配对检查,也可以清晰地看出来函数是否结束。
范例1:函数的声明
void matMyFunction(int n)
{
……
} /* matMyFunction*/
1.2空格与空行的使用
要加空格的场合
l 在逗号后面和语句中间的分号后面加空格,如:
int i, j, k;
for (i = 0; i < n; i++)
result = func(a, b, c);
l 在二目运算符的两边各留一个空格,如
a > b a <= b i = 0
l 关键字两侧,如if () …, 不要写成if() …
l 类型与指针说明符之间一定要加空格:
char *szName;
不加空格的场合
l 在结构成员引用符号.和->左右两加不加空格:
pStud->szName, Student.nID
l 不在行尾添加空格或Tab
l 函数名与左括号之间不加空格:
func(…)
l 指针说明符号*与变量名间不要加空格:
int *pInt; 不要写成: int * pInt;
l 复合运算符中间不能加空格,否则会产生语法错误,如:
a + = b a < = b 都是错误的
空行与换行
l 函数的变量说明与执行语句之间加上空行;
l 每个函数内的主要功能块之间加空行表示区隔;
l 不要在一行中写多条语句.
范例2:空行与换行
int main()
{
int i, j, nSum = 0; //变量说明
for (i = 0; i < 10; i++) //执行代码
{
for (j = 0; j < 10; j++)
{
nSum += i;
}
}
}
1.3缩进的设置
根据语句间的层次关系采用缩进格式书写程序,每进一层,往后缩进一层
有两种缩进方式:1,使用Tab键;2,采用4个空格。
整个文件内部应该统一,不要混用Tab键和4个空格,因为不同的编辑器对Tab键的处理方法不同。
1.4折行的使用
· 每行的长度不要超过80个字符,当程序行太长时,应该分行书写。
· 当需要把一个程序行的内容分成几行写时,操作符号应该放在行末。
· 分行时应该按照自然的逻辑关系进行,例如:不要把一个简单的逻辑判断写在两行上。
· 分行后的缩进应该按照程序的逻辑关系进行对齐。例如:参数表折行后,下面的行应该在参数表左括号的下方。
范例2:折行的格式
dwNewShape = matAffineTransform(coords, translation,
rotation);
if (((new_shape.x > left_border) &&
(new_shape.x < right_border)) &&
((new_shape.y > bottom_border) &&
(new_shape.y < top_border)))
{
draw(new_shape);
}
1.5嵌套语句(语句块)的格式
对于嵌套式的语句--即语句块(如,if、while、for、switch等)应该包括在花括号中。花括号的左括号应该单独占一行,并与关键字对齐。建议即使语句块中只有一条语句,也应该使用花括号包括,这样可以使程序结构更清晰,也可以避免出错。建议对比较长的块,在末尾的花括号后加上注释以表明该语言块结束。
范例3:嵌套语句格式
if (value < max)
{
if (value != 0)
{
func(value);
}
}
} else {
error("The value is too big.");
} /* if (value < max) */
2 注释书写规范
注释必须做到清晰,准确地描述内容。对于程序中复杂的部分必须有注释加以说明。注释量要适中,过多或过少都易导致阅读困难。
2.1注释风格
· C语言中使用一组(/* … */)作为注释界定符。
· 注释内容尽量用英语方式表述。
· 注释的基本样式参考范例4。
· 注释应该出现在要说明的内容之前,而不应该出现在其后。
· 除了说明变量的用途和语言块末尾使用的注释,尽量不使用行末的注释方式。
范例4:几种注释样式
/*
* ************************************************
* 强调注释
* ************************************************
*/
/*
* 块注释
*/
/* 单行注释 */
//单行注释
int i; /*行末注释*/
2.2何时需要注释
· 如果变量的名字不能完全说明其用途,应该使用注释加以说明。
· 如果为了提高性能而使某些代码变得难懂,应该使用注释加以说明。
· 对于一个比较长的程序段落,应该加注释予以说明。如果设计文档中有流程图,则程序中对应的位置应该加注释予以说明。
· 如果程序中使用了某个复杂的算法,建议注明其出处。
· 如果在调试中发现某段落容易出现错误,应该注明。
3 命名规范
3.1常量、变量命名
l 符号常量的命名用大写字母表示。如:
#define LENGTH 10
l 如果符号常量由多个单词构成,两个不同的单词之间可以用下划线连接。如:
#define MAX_LEN 50
变量命名的基本原则:
l 可以选择有意义的英文(小写字母)组成变量名,使人看到该变量就能大致清楚其含义。
l 不要使用人名、地名和汉语拼音。
l 如果使用缩写,应该使用那些约定俗成的,而不是自己编造的。
l 多个单词组成的变量名,除第一个单词外的其他单词首字母应该大写。如:
dwUserInputValue。
3.2函数命名
函数命名原则与变量命名原则基本相同。对于初学者,函数命名可以采用“FunctionName”的形式。
4 其它一些小技巧和要求
l 函数一般情况下应该少于100行
l 函数定义一定要包含返回类型,没有返回类型加void
l 写比较表达式时,将常量放在左边
10 == n
NULL != pInt
l 指针变量总是要初始或重置为NULL
l 使用{}包含复合语句,即使是只有一行,如:
if (1 == a)
{
x = 5;
}
http://home.ustc.e.cn/~danewang/c/CodingStandards.html
‘陆’ C语言程序设计基础概念
C语言程序设计基础概念
C语言是近年来非常流行的语言,很多人宁愿放弃已经熟悉的其他语言而改用C语言,其原因是C语言有优于其他语言的一系列特点。下面是我搜集的C语言程序设计基础概念,希望大家认真复习!
1.1 C语言的特点
C语言是近年来非常流行的语言,很多人宁愿放弃已经熟悉的其他语言而改用C语言,其原因是C语言有优于其他语言的一系列特点。下面是C语言的主要特点:
(1)语言简洁、紧凑,并且使用方便、灵活;
(2)运算符丰富;
(3)数据结构丰富;
(4)具有结构化的控制语句;
(5)语法限制不太严格,使程序设计比较自由;
(6)C语言允许用户直接访问物理地址,能进行位(bit)操作,可以直接对硬件进行操作。
1.2 源程序的书写规则
C语言的书写规则。C语言书写格式自由,一行内可以写几个语句,一个语句也可以分写在多行上。C程序没有行号,每个语句和数据定义的.最后必须有一个分号。C语言中分号是语句中不可少的,即使是程序中的最后一个语句也应该包含分号。C语言中的注释可以用〃/*〃用〃*/〃结束,注释可以在任何允许插入空格符地方插入。C语言中注释不允许嵌套,注释可以用西文,也可以用中文。
1.3 C语言的风格
由于C语言对语法限制不太严格,为了保证程序的准确性和可读性,建议在书写程序采用阶梯缩进格式。也就是按如下格式书写C语言程序:
**********;
*****()
{
**********;
********;
{
******;
……
}
*********;
}
概括起来,C语言程序具有如下的风格:
①C语言程序的函数具体模块结构风格,使得程序整体结构清晰、层次清楚,为模块化程序设计提供了强有力的支持。
②C语言的源程序的扩展名都是.C。
③C语言中的注释格式为:
/*注释内容*/
/与*之间不允许有空格,注释部分允许出现在程序中的任何位置。
④C语言中的所有语句都必须以分号“;”结束。
;‘柒’ C语言的问题(书写代码的基本规则)
书写C语言程序时应遵循的规则 !
从书写清晰,便于阅读,理解,维护的角度出发,在书写程序时 应遵循以下规则:
1.一个说明或一个语句占一行。
2.用{} 括起来的部分,通常表示了程序的某一层次结构。{}一般与该结构语句的第一个字母对齐,并单独占一行。
3.低一层次的语句或说明可比高一层次的语句或说明缩进若干格后书写。以便看起来更加清晰,增加程序的可读性。在编程时应力求遵循这些规则,以养成良好的编程风格。
C语言是一门功能强大的编程语言,它也是C++语言的基础。C语言属于中级语言。这里所说的中级是相对于计算机的底层硬件而言的。汇编语言是最低级的语言,它可以直接与硬件打交道。高级语言有Pascal、Basic、Fortran等等。高级语言的一条语句对应低级语言的很多条语句,任何高级语言编写的程序都要经过编译程序的编译、连接才能成为可以运行的程序。编译连接的过程也就是把高级语言翻译成机器语言(二进制机器码)的过程,而汇编语言是基本上与机器语言一 一对应的一种语言。这个翻译过程是由编译程序自动完成的。把C语言定为中级语言是有它的道理的,因为C语言既有汇编语言的存取底层硬件的能力,又具有高级语言的许多特点。熟练掌握了C语言,学习其它的各种编程语言应该是很轻松的了。
C语言的书写格式:
1) 一个C语言编写的源程序,必定有一个主程序(称为main()函数,在C语言中子程序称为“函数”(当然,不要理解成为数学里面的“函数”)。但是决不能有一个以上的main函数(即只能有一个)。
2) 函数语句块用‘{’括号开始, 以‘}’反括号结束。这样的花括号必须成对出现。
3) 表达式写在小括号里面,以‘(’括号开始,以‘)’反括号结束。
4) 函数不能嵌套,即函数里面不能再套函数。(每一个函数是完成一个特定功能的函数模块)
C语言的组成:
C语言是由许多函数组成的。其中只有一个主函数(main()函数)。C程序执行时总是从main函数的‘{’处开始,至main函数的反大括号'}'处结束。当然还有其它一些规则,这将在以后的学习中去熟悉它。
C语言的书写规则:
C语言在书写时有它自身的特点:书写格式比较自由,在一行里可以写多条语句,一个语句也可以分写在多行上。虽然如此,在书写源程序时还是要注意哪些可以自由书写,而哪些必须要按照书写规则来书写。
几条规则写在下面:
1) 一行内可以写几个语句,建议一行不超过两条语句;
2) 一条语句可以写在多行上;
3) C语句不需要写行标号;
4) 每条语句及数据定义的后面要写上分号以表示该语句结束;
5) C语言中注释用 /* */来表示;
6) 建议书写时采用缩进格式;
7) 花括号、小括号都是成对出现的。
一个最简单的C程序的编写:
/* 程序代码*/ /* 注释部分*/
main() /*main是主函数名。紧跟在main后面的括号是放参数的。
括号里面为空说明main函数不需要参数*/
{ /*正写的大花括号表示main函数从这里开始*/
} /*反写的大花括号表示main函数到这里结束*/
说明:由于是一个演示程序,在函数体内并没有任何可以执行的语句,也就是这个程序什么事也不做。
这个程序就是这么简单: 写在一行上就是 main() { }
你在TC的编辑环境下把这段代码输入进去,按F9键编译连接,按CTRL_F5运行,一定很正常。但是什么结果也不会有,因为在main函数里面什么代码也没有。
下面再举一个可以向屏幕上输出一条信息的例子:
main()
{
printf("这就是C语言编写的程序!"); /*这一条语句的作用是向屏幕输出一条信息
”这就是C语言编写的程序!"*/
}
在这个程序中,main函数只有一条语句:printf("这就是C语言编写的程序!");这个语句的作用是向屏幕输出一个字符串。有关这个语句的知识以后再讲。现在要注意的是一个C语言程序的框架是怎样组成的。
C语言程序的几种文件格式:
1、 源程序---在TC集成环境中输入的程序文本称为源程序。源程序是一种文本文件。它是我们看得见并认识的一种文件。其扩展名为.C。例如你把文件保存为TEST,那么在磁盘上应看得到TEST.C这个文件。这样的文件可以用记事本打开。
2、二进制文件---写完了源程序后接着要做的是编译这个文件。在TC集成环境里是按ALT_F9键,编译后生成了一个二进制文件,这个二进制文件名为TEST.OBJ,也就是扩展名为OBJ的目标文件。
3、运行文件---最后一步是make(或Link),在TC集成环境里是按F9键Make之后生成了一个可以在DOS下运行的文件,其扩展名为EXE。如TEST.EXE。这个EXE文件是由第2步中的OBJ文件生成的。OBJ文件虽然是二进制文件,而电脑又是可以运行二进制文件的,为什么还要把OBJ文件Link为EXE文件才能运行?这里的知识就比较多了,这里不能多讲。但是要明白一点,在DOS下仅仅有了一个二进制文件还不能运行,因为操作系统要把这些二进制文件加以规划,把相应的数据、程序代码放到应该放的内存位置,这样的经过严密规划和组织好了的二进制文件才能运行。而这些只有在生成的EXE文件里面才做完了这些工作。
‘捌’ 求C语言编写的一般格式
1,C语言程序的结构特点
一个C语言程序通常由一个预处理语句开始,如#include〉stdio.h〉,它表示,在编译语言程序前,用指明的文件取代改预处理语句,通常文件名是带有后缀为.h的磁盘文件.编译时,它将从磁盘中读出并插入到原来的预处理程序语句中.即预处理语句被指明的包含文件(头文件)代替.
头文件通常是在程序中被调用函数的说明语句和该函数用到的一些符号常量的宏定义.如在程序中经常调用一些标准库函数时,系统提供了相应的头文件,他们其中的一些内容是对该函数的说明及该函数用到的符号常量的宏定义等,如对fgets()的说明放在头文件stdio.h中,再盖头文件包含了对fgets()函数的说明:
char *fgets(char *s,int n,FILE *stream)
对符号常量的定义:
#define NULL 0
当然还包含了一些其他的标准I/O函数的说明和宏定义等.用户也可以建立自己的头文件,在程序开头用include进行包含就行了:
#include"文件名"
注意此时用" "符号来包括,它与 #include〉文件名〉的区别是查找的路径不同.前者表示现在当前目录中查找该文件,如果找不到,再到系统指定的目录中查找.而后者只在系统的制定目录中查找(一般是include\目录),若找不到,便报错.所以用#include"文件名"的形式常用于用户自己写的包含文件,他们通常放在和用户程序同一个目录下.当然在这种形式中,文件名也可用文件路径代替,这时,编译器就去用户指定的目录去查找包含文件.文件包含也可以用在程序行中,如:
main()
{
...
#include "myc.c"
...
}
其中myc.c时用户的c文件,编译时,它将从磁盘中取出,插入到该位置处.
一些在程序中常用到的常量也用编译预处理命令#define来定义,如在真假判断时,常用符号常量TURE和FALSE表示真和假,这时可以用一下定义:
#define TURE 1
#define FALSE 0
将以上代码写在程序的开头,编译时在程序中出现TURE的地方都用1代替,出现FALSE的地方用0代替.
一个完整的C程序,总是由main()函数开始,它像一个大型乐曲的引子,由此引出许多乐章(执行不同的功能的函数);main()函数又像一个大型建筑的框架,它显示了要完成这个建筑的轮廓,这些轮廓就是由一个个函数调用勾画出来的.因此可以说一个C程序是由一个个的模块堆砌起来的,这些模块的最小元素是函数.当然,模块也可以是一个源程序,它又有许多的函数组成.所以c程序的设计是一种模块化的设计,是许多的函数的堆砌.因此在应用程序的设计中,应将一个个的功能用一个个的函数来实现.下面就谈谈函数的使用.
turbo C的函数的使用
Turbo C2.0提供了400多个标准的库函数,每个函数都完成一定的功能.当程序执行这些功能时,只要调用这些函数即可,用户不必再自己写这些函数了.这些库函数包括输入输出函数,数学函数,字符串处理函数,内存函数,与BIOS和Dos有关的接口函数,屏幕函数和图形函数,过程控制函数和目录函数等.这些函数在我的主页上都能查到,欢迎来查询.
当标准库函数中没有用户要用的函数时,就必须自己设计了,设计函数的原则是:
1,函数不应处理太多的功能,要保持函数的小型化,功能单一化.
2,一个函数要保持自己的独立性,如同一个黑匣子一样,有进有出.
3,在函数中多使用复合语句,使函数也具有结构化,并且可以提高执行效率和节省存储空间.
4,在主函数前,要罗列出所有使用自定义函数的原型说明,这有利于在大型程序设计中追踪要调用的函数设置是 否正确.
5,在程序适当的地方加入注释(用/*...*/包含的语句)这便于程序的阅读和调试.
6,采用层次的书写程序格式,按程序的不同功能分层次.
这样一个函数编译后,其内部定义的程序代码与数据与另一个函数的程序代码和数据不会相互影响,因此在函数中要使用局部变量,即它的生存期指维持在调用该函数并执行时,也就是说函数被激活时.要尽量少用或不用全局变量,它将破坏函数的独立性.函数的这种设计方法类似于面向对象设计方法中的封装性.
C大型软件程序的设计步骤
C语言作为结构化的程序设计语言,易采用自顶向下的设计方法,即开始咱不涉及问题的实质和具体的解决步骤,而只是从问题的全局出发,给出一个概括性的抽象描述.例如编写一个信号处理程序,它要求对信号数据经过数字处理后进行图形显示并存盘.因而程序大轮廓应该是:
1,信号数据的输入
2,信号预处理
3,信号进行数字处理
4,进行显示
5,进行存盘
接着对各项功能进行细分,例如对于信号的输入,又可分为:
1.通过com1或com2由RS-232接口进行输入
2.由磁盘数据文件输入
对信号预处理又可分为:
1.对信号进行反序排列
2.用窗函数预处理
对数字处理又可分为:
1.求快速傅立叶变换
2.求功率谱
对用窗函数处理又可分为:
1.海明窗处理函数
2.汉宁窗处理
3.布拉格曼窗处理
其他功能依此类推.
在此细化的基础上再进行细化,以至于成为一个个单独的功能,便于用一个个函数来实现.
下面就是设计一个个函数的实质性阶段.要定义变量,要选区标准函数,要确定算法,这是构造程序的基本单元.当一个个函数都设计完了以后,便可将这些函数在主函数中堆砌起来,并用主函数做总控程序,完成对他们的参数传递,控制选择对这些函数的调用,形成一个完整的实用的信号处理程序.
大程序的设计风格
当一个程序较大时,可将一个程序分成几个部分,每一个部分可单独编成一个源文件,这些源文件可进行单独编译成.obj文件,然后将这些文件组合成一个较大的程序.通常可采用如下方法:
1.include方法
例如,一个程序分成两个源文件,既由a1.c和a2.c两个源程序组成,这时候可将a1.c写成:
#include〉stdio.h〉
#include"a2.c"
main()
{
...
strcpy(s1,s2);
a2();
...
}
而a2.c可写成:
#include〉string.h〉
void a2()
{
....
}
然后在制作一个project文件,内容为:a1.c a2.c
设这个工程文件名为:a1.prj,其中文件中各文件名的后缀可省略,先后顺序也无关,它只影响编译时的顺序.者可在Turbo c的编辑状态下写成,并存盘为a2.prj文件.然后用Alt+p选择Project菜单中的Project_name项,填写生成的a1.prj文件名.然后按F9,即可生成a1.exe可执行文件.
当用汇编语言与C语言混合编程时,则要将汇编语言子程序单独编译生成.obj文件,然后制作工程文件,再进行对C程序的编译和连接.关于这方面的介绍可参考Turbo c2.0的命令行编译.
若程序还需要一些其他的被编译的程序或库文件,这些文件时C语言的标准库不能提供的,则也可将它们的名字放在Project文件中.如:
mymain
myfunc
secial.obj
other.lib
当用F9进行编译连接时,对后缀为.obj的文件只进行连接,对后缀为.lib的库文件不会进行编译,只是进行连接,这样当进行外部调用时,就只会对库进行检索.
当多个源文件制作成project 文件时,一个.c的源文件依赖于其他的.c源文件,若它们之间用一个头文件来进行接口,这时应用括号将这些头文件扩起来(头文件之间可用逗号,空格或分号间隔),这样一旦头文件改变时,它们将被重新编译,例如:有一个主程序名为mymian.c,它包含头文件为:myfuncs.h,而另一个文件是myfuncs.c
这样当project文件的内容写成如下形势时:
mymain.c(myfuncs.h)
myfuncs.c(myfuncs.h)
若一旦myfuncs.h被修改,则对该project文件进行编译时,mymain.c及myfuncs.h将被重新编译
‘玖’ C语言书写格式标准是什么
你的错误是没加头文件,因为使用printf需要调用库函数 stdio.h。
符号名包括模块名、常量名、标号名、子程序名等。这些名字应该能反映它所代表的实际东西,具有一定的意义,使其能够见名知义,有助于对程序功能的理解。命名采用匈牙利命名法。具体规则如下:
(1)所有宏定义、枚举常数和const变量,用大写字母命名。在复合词里用下划线隔开每个词。
(2)复合词中每个单词的第一个字母大写。除了规则5.1.1.1以外,避免使用下划线。
(3)类、类型定义和枚举型名的第一个字母大写。
(4)函数名是复合词的,第一个词采用全部小写,随后每个单词采用第一个字母大写,其它字母小写方式;如果是单个词的,采用全部小写方式。
(5)循环变量可采用i, j, k等,不受上述规则限制。
(6) 类的成员变量应采用m_开头。
(7) 全局变量词头为g_ 。
(8) 临时变量词头为tmp_ 。
(9) 对结构体内的变量命名, 遵循变量的具体含义命名原则
(10)用小写字母的前缀表示变量的类型,前缀的下一个字母用大写。
——文件之中不得存在无规则的空行,比如说连续十个空行。
一般来讲函数与函数之间的空行为2-3行;
在函数体内部,在逻辑上独立的两个函数块可适当空行,一般为1-2行。
——程序编写首先应考虑清晰性,不要刻意追求技巧性而使得程序难以理解。
——每行长度尽量避免超过屏幕宽度,应不超过80个字符。
——除非对效率有特殊要求,编写程序要作到清晰第一,效率第二。
——尽可能使用函数库。
——尽量用公共过程或子程序去代替重复的功能代码段。要注意,这个代码应具有一个独立的功能,不要只因代码形式一样便将其抽出组成一个公共过程或子程序。
——使用括号清晰地表达算术表达式和逻辑表达式的运算顺序。如将 x=a*b/c*d 写成 x=(a*b/c)*d可避免阅读者误解为x=(a*b)/(c*d)。
——避免不必要的转移。
——避免采用过于复杂的条件测试。
——避免过多的循环嵌套和条件嵌套。
——建议不要使?*=,^=, /=等运算符。
——一个函数不要超过200行。一个文件应避免超过2000行。
——尽量避免使用go to语句。
——避免采用多赋值语句,如x = y = z ;
——不鼓励采用?:操作符,如z = (a>b)?a:b;
——不要使用空的if else 语句。