一。简单C程序示列
#include<stdio.h>
int main(void)
{
int num;
num=1;
printf("I am a simple");
printf("My favorite number is %d because it is first.\n",num);
return 0;
}
程序输出如果一闪而过,在return前加一行代码 getchar();
1.第一遍,快速概要
#include<stdio.h> <-包含另一个文件
该行把stdio.h中的内容包含到当前程序中,stdio.h是C编译器软件包的标准部分,提供键盘输入和屏幕输出的支持
int main(void) <-函数名
C程序包括多个函数,它们是C程序的基本模块。
圆括号表明main()是一个函数名,int 表示main()函数返回一个整数,void表示main()不带任何参数。
{}花括号表示函数定义开始和结束
int num:<-声名 将使用一个叫num的变量,num是int类型
num=1 <-赋值表达式
printf('I am a simple');<-调用一个函数,
使用printf()函数,在屏幕显示“”内内容,光标停在同一行。 程序中使用的函数是调用函数
printf("computer。\n"),<-调用另一个函数,\n告诉计算机另起一行,把光标移至下一行
printf("My favorite number is %d because it is first.\n",num); %d告诉计算机以何种形式输出num值
return 0; <-return语句
2.第二遍细节
(1)#include<stdio.h> <-包含另一个文件
把stdio.h文件中的所有内容都输入该行所在的位置,include文件提供了一种方便的途径共享信息
#include这行是预处理指令,头文件中包含编译器创建最终可执行程序要用到的信息,头文件帮编译器把你的程序组合一起,
stdio.h为标准输入/输出头文件
为什么不内置输入和输出?并非所有程序都用到I/O包,轻装上阵
(2)int main(void) <-函数名
C程序一定从main开始执行,除了main可以有别的,但是都是先从main开始执行的
int是main函数返回的类型,()包含一些传入函数的信息
(3)注释 两种/*任意行*/,//只能写一行
/*一道简单的程序*/
/*
也可以这样写注释
*/
//这种注释只能写一行
(4)花括号,函数体和块
{}把main函数括起来,所有C函数都用花括号标记函数体的开始和结束
(5)声明
声名完成两件事:1.有一个叫什么名字的变量2.该变量的类型是什么
任何变量使用前需要先声名
命名:可以用大小写字母,数字和下划线命名,但是第一个字符不能是数字
C99要求把声明放在块的顶部
int num:<-声名 将使用一个叫num的变量,num是int类型
(6)赋值
num=1 <-赋值表达式
声明时给num预留了空间,在执行这条语句时,将值存在预留的空间里
(7)printf()函数 把参数打印下来
\n换行符的作用和Enter建相同
printf('I am a simple');<-调用一个函数,
(8)return语句
return 0; <-return语句
返回待返回的值
二。简单程序的结构
程序由函数(函数头(函数名,传入该函数的信息类型,函数返回类型)和函数体(花括号括起来的一系列语句,声明))组成,必须有main()函数
三.提高程序可读性技巧
1.选择有意义的函数名
2.写注释
3.在函数中用空行分隔概念上的多个部分
4.每个语句各占一行
四.进一步使用C
#include<stdio.h>
int main(void)
{
int feet.fathoms; //等价为int feet;int fathoms
fathoms =2;
feet = 6*fathoms; //乘法 把fathoms的值*6赋值给feet
printf("there are %d feet in %d fathoms!\n",feet,fathoms);
//双引号后第一个变量替换第一个%d
printf("Yes,I said %d feet!\n",6*fathoms);
//待打印的值不一定是变量,只要符合输出类型即可
return 0;
}
五.多个函数
#include<stdio.h>
void butler(void);
int main(void)
{
printf("I will summon yhe butler function.\n");
butler();
printf("Yes.Bring me some tea and writeable DVDs.\n");
return 0;
}
void butler(void)
{
printf("You rang,sir?\n");
}
butler()函数在程序中出现了3次,
第一次是函数原型,告知编译器在程序中要用该函数,
第二次以函数调用的形式出现的main()中
第三次在函数定义中,函数定义即为函数本身的源代码
其中void的意思是空的,函数没有返回值
输出结果
六.调试程序
程序的错误叫做bug,找出并修正错误的过程叫做debug
语法错误,语义错误,逻辑错误,中英文符号,未声明变量就用
七.关键字和保留标识符
auto | extern | short | while |
break | float | signed | _Alignas |
case | for | sizeof | _Alignof |
char | goto | static | _Atomic |
const | if | struct | _Boot |
continue | inline | switch | _Complex |
default | int | typedef | _Generic |
do | long | union | _Imaginary |
double | register | unsigned | _Noreturn |
else | restrict | void | _Static_assert |
enum | return | volatile | _Thread_local |