C语言的基本语句结构

一.表达式语句
在表达式后加一个分号“;”就构成表达式语句。例如:
a=3*b-c/2;
i - -;
++j;
b=(a>3)? 1:0;

特别注意空语句(只有一个分号的语句)其形式为:
;
空语句一般不独立使用,常用于满足特定条件下的语法需求,或用在循环中起特定的作用。

二.复合语句
复合语句由一对花括号“{ }”将多个语句括起来所组成。例如:

{
	a=b+c;
	x=y%a;
	printf("a=%b,x=%d\n,a,x);
}

三.控制语句
控制语句是由控制结构组成的语句,完成特定的动作或功能,控制语句有以下5种。
(1)选择(分支)语句:if···else。
(2)多分支语句:switch。
(3)for循环语句:for。
(4)while循环:while。
(5)do…while循环:do···while。

四.转向控制语句
用于改变程序的流程
(1)break;用于switch语句和循环语句。起中断和跳出循环的作用。ps:在switch语句下的每一句case语句结束后都要添加break;语句。如

switch(<表达式>)
{
	case <常量表达式1>:<语句序列1>;
					break;
	···
	case <常量表达式n>:<语句序列n>;
					break;
}

(2)continue;只用于循环语句。
continue 语句不会终止循环,而是在<循环语句>没有执行完的情况下,结束当前的循环,提前进入下一个循环。
(3)return;用在函数的结束初。返回值
(4)goto<标号>;可用于程序的任何地方,但不提倡使用。其一般形式:
goto 语句标号;

五.格式化输出函数
格式化输出函数printf()的作用是按控制字符串指定的格式,向标准输出设备输出指定的输出项,其一般形式为:
printf(“格式控制字符串”,输出项列表);
ps:<输出项列表>可以是常量、变量、表达式,其类型的个数必须与格式控制字符串中字符的类型、个数一致,当有多个输出项时,各项之间用逗号分隔。
假如有int x,y,z; 则x,y,a+b,b-c就构成一个输出项列表。
1、格式说明
格式说明的一般格式:
%[<修饰符>]<格式字符>
**<格式字符>规定了对应输出项的输出格式,**在<格式字符>的前面,还可以加上字母1和h(大小写均可),用于说明是用long型或short型格式输出数据。常用输出格式字符:
d :按十进制整数输出
Hd 或 hd :按十进制整数输出短整型数
Ld 或 ld :按十进制整数输出长整型数
u :按无符号整数输出
Hu 或 hu :按无符号整型输出
f :按浮点型小数输出
Lf 或 lf :按双精度输出浮点数
e :按科学计数法输出
o :按八进制整数输出
x :按十六进制整数输出
g :按e和f格式中较短的一种输出
c :按字符型输出
s :按字符串输出

<修饰符>是可选的,用于确定数据输出的宽度、精度、小数位数、对齐方式等。使得输出更加规范整齐
(1)字段宽度修饰符
%m d :以宽度m输出整型数,数据不足m时,左补空格。
%0 m d:以宽度m输出整型数,数据宽度不足m时,左补零
%m.nf:以宽度m输出实型小数,小数位为n位。(这个文本编辑器是真滴蠢)
ps:手动输入的宽度是多少就显示多少,不足的补上空格或是0(%0md)
更加灵活的宽度控制:以“*”作为修饰符。其格式为:
printf("%*d",k,i);此处根据k的动态值决定i的显示宽度。
(2)对齐方式修饰符
右对齐:默认的对齐方式
左对齐:在%后加上一个负号 即%-md
2.普通字符
(1)打印字符主要是一些说明字符,会按原样显示在屏幕上。
(2)转义字符其实是控制字符,控制产生特殊的输出效果。

六.格式化输入函数
格式化输入函数scanf()的功能是从键盘上按指定格式输入数据,并将输入数据的值赋给相应的变量。(获得或是显示我们输入的值)其一般格式:
scanf(“控制字符串”,输入项列表);
ps:scanf()函数<输入项列表>中的变量地址,就是变量名前加上地址操作符“&”
1.格式说明
格式说明规定了输入项中的变量以何种数据类型的格式被输入。其一般格式:
%[<修饰符>] <格式字符>
格式字符
d:输入一个十进制整数
o:输入一个八进制整数
x:输入一个十六进制整数
f:输入一个小数形式的浮点数
e:输入一个指数形式的浮点数
c:输入一个字符
s:输入一个字符串
(1)字段宽度
(2)l与h。其中l(字母)表示输入数据为长整型数或双精度浮点数,h表示输入数据为短型整数
(3)字符“*”
*表示按规定格式输入但不赋予相应变量,作用是跳过相应的数据。例如

int x=0,y=0,z=0;
scanf("%d%*d%d",&x,&y,&z);
//若输入这样的数据:11 22 33

则x=11、y=33,z未赋值(z保持原来的值不变),22这个值被跳过,没有赋给任何变量。
2.普通字符
(1)空白字符
空格符、制表符或换行符都是一种空白符。用处:当需要输入多个变量的值时,可通过空格符、制表符或换行符来分离输入的值进而完成正确的赋值
为了防止空格符被错误地赋值给变量,则选择*来跳过空格符其实人性化的选择是在程序设计时,可采用先输入字符变量的值,后输入数值型变量的值来避免。
(2)转义字符
在scanf()语句中,加入转义字符一般不会产生影响,但是不建议在scanf()语句中加入除格式符以外的转义字符。
(3)可见字符
在scanf()语句中的可见字符不会显示在屏幕上,但是会要求输入者按原样输入,否则秉承一一对应赋值的原则就会出现错误的赋值。如:
scanf("%d,%d,%c",&a,&b,&ch);
该语句中的可见字符是两个逗号(,)则你的正确输入应为例:12,34,q此时结果为a=12,b=34,ch=q
若你输入的是12 34 q则会产生将12赋值给变量a以外,赋给变量b与ch的值会是一个不可预料的结果。
因此特别提醒:
其一:注意数值型数据和字符型数据的取值特点,好的习惯是先输入字符型数据,后输入数值型数据。
其二:在scanf()语句中不要加入可见字符。如要提示,可在scanf()语句前通过printf() 语句加以提示。

七.字符输出/入函数(我去问问请教一下老师在回来改)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值