C语句概述:

C程序的执行部分是由语句组成的。程序的功能也是由执行语句实现的。
程序的三种基本结构:顺序结构选择结构循环结构
C语句可分为以下五类:
1、表达式语句
2、函数调用语句
3、控制语句
4、复合语句
5、空语句
表达式语句:表达式语句由表达式加上分号“ ; ”组成。
其一般形式为:
表达式;
执行表达式语句就是计算表达式的值。
例如:
x=y+z; 赋值语句;
y+z; 加法运算语句,但计算结果不能保留,无实际意义;
i++; 自增1语句,i值增1。
函数调用语句:由函数名、实际参数加上分号“ ; ”组成。
其一般形式为:
函数名(实际参数表);
执行函数语句就是调用函数体并把实际参数赋予函数定义中的形式参数。然后执行被调函数体中的语句,求取函数值。
例如:
printf(“C Program”);调用库函数,输出字符串。
控制语句:控制语句用于控制程序的流程,以实现程序的各种结构方式。它们由特定的语句定义符组成。C语言有九种控制语句。可分为以下三类:
条件判断语句:if语句、switch语句;
循环执行语句:do while语句、while语句、for语句;
转向语句:break语句、goto语句、continue语句、for语句;
复合语句:把多个语句用括号{}括起来组成的一个语句称复合语句。
在程序中应把复合语句看成是单条语句,而不是多条语句。
例如:
{
x+y=z;
a=b+c;
printf(“%d%d”, x,a);
}
是一条复合语句。
复合语句内的各条语句都必须以分号“;”结尾,在括号“}”外不能加分号。
空语句:只有分号“;”组成的语句称为空语句。空语句是什么也不执行的语句。在程序中空语句可用来作空循环体。
例如
while(getchar()!=’\n’);
本语句的功能是,只要从键盘输入的字符不是回车则重新输入。
这里的循环体为空语句。

赋值语句

赋值语句由赋值表达式加分号组成:
a=b 赋值表达式
a=b; 赋值语句
++i;j—;j++;i++; 自增自减语句

数据输入输出

一个程序,一般情况下都包含数据输入数据处理数据输出三个部分。
输出:把数据从计算机内部送到计算机的外部设备上的操作称为“输出”。
输入:从计算机外部设备将数据送入计算机内部的操作称为“输入”。
C语言不提供输入输出语句,输入输出操作是由c的库函数完成。但要包含头文件stdio.h
putchar()向终端输出一个字符
getchar()从键盘接收的字符 执行getchar()时输入字符以回车结束,同事回车字符也可以做为输入的字符。
printf(“格式控制字符串,输出参数表”)格式输出函数
printf也可以没有输出项,函数的调用形式将为:printf(格式控制)
比如:printf(“OK!”); OK!

%d 按十进制整型形式输出变量的值
%o 按八进制整型形式输出变量的值
%x 按十六进制整型形式输出变量的值
%u 输出十进制无符号int型
%f 以小数形式(6位小数)输出float,double
%e 以标准指数形式输出float,double
%c 以字符形式输出单个字符
%s 输出一个字符串
%ld 按十进制整数形式输出长整型变量的值
%md 输出整数据占m个字符位,右对齐
%-md 输出整数据占m个字符位,左对齐
%m.nf 输出数据占m个字符位,小数后留n位,右对齐
%-m.nf 输出数据占m个字符位,小数后留n位,左对齐
表达式值的类型 对应 类型格式
字符型(char、unsigned char) %c、%d、%u、%o、%x
整型(int、unsigned)
(long、unsigned long)
%d、%u、%o、%x、%c
%ld、%lu、%o、%x、%c
实型(float)
(double)
%f、%e、%g
%lf、%e、%g
字符串(字符串常量、字符串组) %s

1、格式说明与输出项从左到右在类型上要一一对应匹配
例如:
int a = 10;
float b = 12.5;
printf(“a=%f,b=%d\n”,a,b);的输出结果为 a=0.000000,b=0
printf(“a=%d,b=%f\n”,a,b);的输出结果为 a=10,b=12.500000
2、输出格式少于输出项时,多余的输出项不与输出;
输出格式多于输出项时,输出一些毫无意义的数字。
例如:
int a=10,b=20,c=30;
printf(“%d,%d\n”,a,b,c); 的输出结果为 10,20
printf(“%d,%d,%d,%d\n”,a,b,c); 的输出结果为 10,20,30,2387460
3、在格式控制串中,除了合法的格式说明外,可以包含任意的合法字符,还可以包括转义字符,这些字符在输出时将“原样照印”。
例如:
printf(“my\tname\tis\tjixiaoli\n”); 的结果为 my name is jixiaoli
printf(“my\rname\tis\tjixiaoli\n”); 的输出结果为 name is jixiaoli
printf(“my\bname\tis\tjixiaoli\n”); 的输出结果为 mname is jixiaoli
printf(“my\0name\tis\tjixiaoli\n”); 的输出结果为 my
4、如果需要输出百分号%
例如:
printf(“%d%%”,100); 的输出结果为 100%
5、在scanf函数调用的后面加一个分号就构成输入语句。
若要给k赋值10,a赋值12.3,y赋值1234567.89
10回车12.3回车1234567.89回车 必须用间隔符隔开 空格回车制表符