本文共 3728 字,大约阅读时间需要 12 分钟。
C程序的执行部分是由语句组成的。程序的功能也是由执行语句实现的
C语句课分为以下五类:表达式语句:由表达式加上分号“;“,其一般形式为:表达式;
函数调用语句:由函数名、实际参数加上分号组成。
控制语句:用于控制程序流程,以实现程序的各种结构方法。C语言有九种控制语句。
空语句:只有分号;组成的语句称为空语句。
空语句案例,该语句功能为,只要从键盘输入的字符不是回车则重新输入
while (getchar()!='\n') { ; }}
赋值语句是由赋值表达式再加上分号构成的表达式语句。
其一般形式为:变量=表达式;赋值语句的功能和特点都与赋值表达式相同。它是程序中用最多的语句之一。
在赋值语句的使用中票要注意以下几点:1.由于在赋值符“=”右边的表达式也可以又是一个赋值表的式,国此,下述形式:
变量=(变量=表达式);是成立的,从而形成嵌套的情形,其展开之后的一般形式为:变量-变量-…=表达式;
2.注意在变量说明中给变量赋初值和赋值语句的区别
结果变量赋初直是变量说明的一部分,赋初值后的变量与其后的其它同类变量之间仍必用逗号间隔,而赋值语句则必用分号结尾。例如: int a=5, b , c
3. 在变量说明中,不允许连续结多个变量赋值
如下述说明是错误的:int a = b =c=5必写为 int a=5,b-5,c=5;
而赋值语句许连续赋值。
4. 注意赋值表达式和赋值语句的区别
赋值表达式是一种表达式,它可以出现在任何允许表达式出现的地方,而赋值语句则不能。
所谓输入输出是以计算机为主体而言的。
在 C 语言中,所有的数据输入/输出都是库函数完成的。此都是函数语句。
在使用 C 语言库函数时,要用预编译令# include 将有关“头文件”包括到源文件中。
使用标准输入输出库函数时要用到“ stdio . h ”文件,因比源文件开头应有以下预编译命令:include < stdio . h >
或# include stdio . h "
stdio 是 standard input & outupt 的意思 考虑到printf和scanf函数使用频繁,系统允许在使用这两个函数时可不加
putchar函数是字符输出函数,其功能是在显示器上输出单个字符
其一般形式为:putchar(字符变量)
使用本函数前必须要用文件包含命令:#include <stdio.h>
getchar函数的功能是从键盘上输入一个字符
其一般形式为:getchar();
通常把输入的字符赋予一个字符变量,构成赋值语句。如
char c;c=getchar();
print 函数称为格式输出函数,其关键字最未一个字母f 即为“格式”( format )之意。
其功能是按用户指定的格式,把指定的数据显示到显示器屏幕上
printf 函数是一个标准库函数,它的函数原型在头文件“ stdio . h ”中
作为一个特例,不要求在用 printf 函数之前包含 stdio . h 文件
print 函数调用的一般形式为:
printf (“格式控制字符串”,输出表列)
格式控制字符串用于指定输出格式。
格式控制串可由格式字符串和非格式字符串两种组成。
格式字符串是以%开头的字符串。在%后面跟有各种格式字符,以说明输出数据的类型,形式、长度、小数等
格式符 | 含义 |
---|---|
%d | 表示按十进制整型输出 |
%ld | 表示按十进制长整型输出 |
%c | 表示按字符型输出等 |
%u | 表示以无正负号十进制出书 |
%s | 表示以字符串形式输出 |
%e | 表示以浮点型指数形式输出 |
%o | 表示按八进制整型输出 |
用十制整数来表示输出的最少位数。若实际位数多于定义的宽度,则按实际位数输出,若实际位数少于定义的宽度则补以空格或 O 。
精度格式以".”开头,后跟十制整数。本项的意义是:如果输出数字,则表示小数的位数;如果输出的是字符,则表示输出字符的个数;若实际位数大于所定义的精度数,则截去超过的部分。
长度格式符为 h,l 两种, h 表示短整型量输出,l表示按长整型量输出。
void main() { int i = 8; printf("%d\n%d\n%d\n%d\n%d\n%d\n%d",i,++i,--i,++i,i--,-i++,-i--);}
输出结果:88888-7-8
void main() { int i = 8; printf("%d\n",++i); printf("%d\n", --i); printf("%d\n", i++); printf("%d\n", i--); printf("%d\n", -i++); printf("%d\n", -i--);}
输出结果:9 8 8 9 -8 -9
因为程序执行是以“;“结尾才进行一个赋值。所以第一个语句只比较一条语句,也就是自有向左赋值。从最后一个-i—开始
scant 函数称为格式输入函数,即用户指定的格式从键盘上数琚输入到定的变量之中。
scanf是一个标准库函数,它的函数原型在头文件“ stdio ”中,与 printf 函,C 语言也允许在使用 scant 函数之之前不必包含 stdio . h 文件。
scanf 函数的一般形式为:
scanf (“格式制字符串”,地址表列)
分别表示变量a和变量b的地址
这个地址就是编译系统在内存中给 a . b 变量分配的地址。在 C 语言中.使用了地址这个概念,变量的值和变量的地址这两个不同的概念区别开来。
变量的地址是 编译系统分配的,用户不必关心本身的地址是多少。
变量的地址和变量值的关系如下:
在赋值表达式中给变量赋值,
如: a =567则, a 为变量名,567是变量的值,& a 是变量 a 的地址
赋值号左边是变量名,不能写地址,而 scanf 函数在本质上也是给变量赋直,但要求写变量的地址,
如& a 。&是一个取地址运算符,& a 是一个表达式,其功能是求变量的地址void main() { int a, b, c; printf("input a b c\n"); scanf("%d%d%d",&a,&b,&c); printf("%d,%d,%d",a,b,c);}
用以表示该输入项,读入后不赋予相应的变量,即跳过该输入值
scanf(“%d%*d%d”&a,&b);当输入为:1 2 3 时,把1赋予a,2被跳过,3赋予b
用十进制整数指定输入的宽度(即字符)
scanf(“%5d”,&a);输入“12345678 时,只把12345赋予变量a,其余部分被截去
长度格式符为1和h,1表示输入长整型数据(如%1d)和双精度浮点数(如%1f)。
h表示输入短整型数据。scan 函数中没有精度控制
如: scanf ("%5.2f".&a);是非法的。不能企图用此语句输入小数为2位的实数。scanf 中要求结出变量地址,如给出变量名则会出错
如 scanf ("% d “, a );是非法的,应己改为 scanf (”% d ".& a );才是合法的。
在输入多个数直数据时,若格式控制串中没有非格式字符作输入数据之间的间隔则可用空格,TAB或回车作间隔。
C 编译在碰到空格, TAB ,回车或非法数据(如对“% d "输入“ I 2A”时, A 即为非法数据)时即认为该数据结束。
在输入字符数据时,若格式控制串中无非格式字符,则认为所有输入的字符均为有效字符
scanf(“%c%c%c”,&a,&b&c)当输入 a b c 时,中间的空格’ ’均会存放进去
所以如果我们需要加空格,只需要在
scanf(“%c %c %c”,&a,&b&c)在每个%c之间加入空格即可,
由此可以引申。我们可以
scanf(“%c,%c,%c”,&a&b&c)去固定的让用户去输入必须每输入一个数字加一个逗号
转载地址:http://jtxmj.baihongyu.com/