C语身教程第三章: C说话挨次筹算匹面(1)

C说话挨次筹算

本课先容C说话挨次筹算的根基要领和根基的挨次语句。
从挨次流程的角度来看,挨次可以分为三种根基构造, 即挨次构造、分支构造、循环构造。 这三种根基构造可以组玉成部的种种重年夜挨次。C说话供给了多种语句来完成这些挨次构造。 本章先容这些根基语句及其运用,使读者对C挨次有一个匹面的见地, 为背面各章的进修打下基础。

C挨次的语句

C挨次的实行部分是由语句构成的。 挨次的成效也是由实行语句完成的。
C语句可分为以下五类:
1.表达式语句
2.函数挪用语句
3.控制语句
4.复合语句
5.空语句

1.表达式语句

表达式语句由表达式加上分号“;”构成。其通俗情势为: 表达式; 实行表达式语句便是策画表达式的值。比如: x=y z; 赋值语句y z; 加法运算语句,但策画结果不克不及保管,无实践意义i ; 自增1语句,i值增1

2.函数挪用语句

由函数名、实践参数加上分号“;”构成。其通俗情势为: 函数名(实践参数表); 实行函数语句便是挪用函数体并把实践参数赋予函数定义中的情势参数,然后实行被调函数体中的语句,求取函数值。(在第五章函数中再细致先容)比如printf("C Program");挪用库函数,输入字符串。

3.控制语句

控制语句用于控制挨次的流程, 以完成挨次的种种构造要领。
它们由特定的语句定义符构成。C说话有九种控制语句。 可分红以下三类:
(1) 前提鉴别语句
  if语句,switch语句
(2) 循环实行语句
  do while语句,while语句,for语句
(3) 转向语句
  break语句,goto语句,continue语句,return语句

4.复合语句

把多个语句用括号{}括起来构成的一个语句称复合语句。 在挨次中应把复合语句看成是单条语句,而不是多条语句,比如
{
x=y z;
a=b c;
printf(“%d%d”,x,a);
}
是一条复合语句。复合语句内的各条语句都必须以分号“;”结尾,在括号“}”外不克不及加分号。

5.空语句

只要分号“;”构成的语句称为空语句。 空语句是什么也不实行的语句。在挨次中空语句可用来作空循环体。比如 while(getchar()!='\n'); 本语句的成效是,只需从键盘输入的字符不是回车则重新输入。这里的循环体为空语句。

赋值语句

赋值语句是由赋值表达式再加上分号构成的表达式语句。 其通俗情势为: 变量=表达式; 赋值语句的成效和特点都与赋值表达式相反。 它是挨次中运用最多的语句之一。 在赋值语句的运用中需求仔细以下几点:

1.由于在赋值符“=”右边的表达式也可以又是一个赋值表达式,因而,下述情势 变量=(变量=表达式); 是建立的,从而构成嵌套的景象。其展开之后的通俗情势为: 变量=变量=…=表达式;
比如:
a=b=c=d=e=5;按照赋值运算符的右接合性,因而实践上等效于:
e=5;
d=e;
c=d;
b=c;
a=b;
2.仔细在变量说明');中给变量赋初值和赋值语句的区别。给变量赋初值是变量说明');的一部分,赋初值后的变量与其后的其它同类变量之间仍必须用逗号间隔,而赋值语句则必须用分号结尾。
3.在变量说明');中,不许诺继续给多个变量赋初值。 如下述说明');是错误的: int a=b=c=5 必须写为 int a=5,b=5,c=5; 而赋值语句许诺继续赋值
4.仔细赋值表达式和赋值语句的区别。赋值表达式是一种表达式,它可以出目前任何许诺表达式出现的中间,而赋值语句则不克不及。
下述语句是正当的: if((x=y 5)>0) z=x; 语句的成效是,若表达式x=y 5年夜于0则z=x。下述语句长短法的: if((x=y 5;)>0) z=x; 由于=y 5;是语句,不克不及出目前表达式中。

数据输入语句

本小节先容的是向标准输入配备显示器输入数据的语句。在C说话中,扫数的数据输入/输入都是由库函数完成的。 因而都是函数语句。本小节先先容printf函数和putchar函数。printf函数printf函数称为花样输入函数,其关头字最末一个字母f即为“花样”(format)之意。其成效是按用户指定的花样, 把指定的数据显示到显示器屏幕上。在背面的例题中我们已屡次运用过这个函数。

一、printf函数挪用的通俗情势

printf函数是一个标准库函数,它的函数原型在头文件“stdio.h”中。但作为一个特例,不要求在运用 printf 函数之前必须包罗stdio.h文件。printf函数挪用的通俗情势为: printf(“花样控制字符串”,输入表列)其中花样控制字符串用于指定输稀奇式。 花样控制串可由花样字符串和非花样字符串两种构成。花样字符串因此%扫尾的字符串,在%背面跟有种种花样字符,以说明');输入数据的范例、情势、长度、小数位数等。如“%d”显露按十进制整型输入,“%ld”显露按十进制长整型输入,“%c”显露按字符型输入等。背面把专门赐与接洽。

非花样字符串在输入时原样照印,在显示中起提示感化。 输入表列中给出了各个输入项, 要求花样字符串和各输入项在数目和范例上应该逐一对应。
void main()
{
int a=88,b=89;
printf("%d %d\n",a,b);
printf("%d,%d\n",a,b);
printf("%c,%c\n",a,b);
printf("a=%d,b=%d",a,b);
}
a<--8,b<--89

printf("%d %d\n",a,b);
printf("%d,%d\n",a,b);
printf("%c,%c\n",a,b);
printf("a=%d,b=%d",a,b);
本例中四次输入了a,b的值,但由于花样控制串分比方,输入的结果也不相反。第四行的输入语句花样控制串中,两花样串%d 之间加了一个空格(非花样字符),以是输入的a,b值之间有一个空格。第五行的printf语句花样控制串中加入的长短花样字符逗号, 因而输入的a,b值之间加了一个逗号。第六行的花样串要求按字符型输入 a,b值。第七行中为了提示输入结果又增长了非花样字符串。



版权声明: 原创作品,许诺转载,转载时请务必以超链接情势标明文章 原始起因 、作者信息和本声明。否则将究查功令责任。

原文地址:https://www.cnblogs.com/zgqjymx/p/1975622.html