如何编写C程序
① 明确代码要实现的功能
在写程序之前,要有清晰的思路。当我们面对一个程序题时,要分辨哪些是重要的信息,应该用什么代码实现,在大脑构造一个大概的框架。
② 设计程序
我们在写代码时,要考虑如何用最简洁的代码实现想要的功能,这样能够大大提高计算机运行效率。
③ 编写代码
写代码难免会遇到错误,比如语法错误、语义错误。我们要做的是尽量避免出错,写代码的同时观察一下这行代码有没有错误。
④ 编译
编译指的是计算机将源代码转换成可执行代码的程序的过程。不同的环境中,转换的可执行代码一般是不一样的。如果源代码中有错误,编译过程是运行不了的,并且会报错。
⑤ 运行程序
⑥ 调试程序
当代码运行的结果和我们预想的不一样,此时我们需要通过不断的调试代码,直到代码正确实现。
⑦ 维护和修改程序
当一个代码写好后,但我们在里面发现错误,这时就需要修改程序。亦或是我们想到一个能够实现这个功能并且更简洁的代码,我们就可以优化程序。
编译、链接
我们编写的源代码并不能直接运行,而是要通过编译和链接转换成计算机能够直接识别、运行的二进制指令。
源代码:高级程序语言编写的指令文件(.c为后缀的文件)。
编译:将源代码转换成目标代码(.obj为后缀的文件)的过程。此时目标代码缺少库代码和启动代码。
链接:将编译器形成的中间代码、编译系统原有的系统库代码和其他一些第三方代码合并、形成目标的可执行文件(.exe文件)。
源文件、头文件
我们通常写代码会在开头写上这么一句代码(#include <stdio.h>),而(#include)这行代码是一条c预处理器指令;(<stdio.h>)这行代码表示的是一个头文件。
头文件通常以.h结尾。(该文件包含了一些函数)
源文件通常以.c结尾。
语句
标号语句:
switch(a)
{
case 1 : //case是标号语句
printf("hehe\n");
break;
default: //default是标号语句
printf("haha\n");
break;
}
复合语句:
while (a < 1000)
{
a = a * 2;
printf("%d\n", a);
a++;
}
跳转语句:
return 0;
选择语句:
if(a)
{
printf("hehe\n");
}
else
{
printf("haha\n");
}
迭代语句:
while (count++ < 20)
表达式语句:
count = 0;
注释
注释有两种形式:/* */ 和 //
/* 这是一条注释语句 */
/* 这是一条
注释语句*/
//这也是一条注释语句
/* */优势在于可以跨行注释,而//只能注释当前的一行,但//编写起来更方便。至于用哪种注释因人而异。
关键字与标识符
使用标识符需注意:只能用小写字母、大写字母、数字和下划线(_)来命名,并且名称的第一个字符必须是字母或下划线。
关键字和保留标识符:关键字是c语言的词汇,它们不能用作标识符。若将关键字作为变量名,编译器会视为语法错误。
quto | break | case | char |
const | continue | default | do |
double | else | enum | extern |
float | for | goto | if |
int | long | register | return |
short | signed | sizeof | static |
struct | switch | typedef | union |
unsigned | void | volatile | while |