C语言第三章总结

1,引例 

 

 2,C语言的语句

         1.说明语句:说明语句用于定义程序所使用的变量与类型。例如:
            int a,b;                       /*定义两个整型变量*/                                                                                        char ch;                    /*定义一个字符型变量*/

         2.表达式语句:表达式语句由表达式加上分号“;”组成。其一般形式如下;例如:
            c=a+b                                                        是一个赋值表达式,而
            c=a+b;                                                      则是一个给表达式语句。

         3.分支语句:分支语句实现分支控制过程,根据条件成立与否执行不同的语句。有两种分支             结构,即双分支if-else语句与多分支的switch语句。例如,下面是一个双分支if-else语句:
            if(x>y)
            z=x;
            else
            z=y;
            该语句首先判断if后面的表达式(x>y),如果条件成立执行“z=x;”,否则执行“z=y;”,if语                句执行后,变量z中存放的是变量x与y中较大的值。

         4.循环语句:C语言中实现循环控制的语句有3种,即for语句、while 语句和do一while 语句。                如果要求计算1+3+5+7+...+99的和,采用while 语句的代码如下:
            sum=o;                                 /*累加变量sum赋初值0*/
            i=1;                                      /*变量i赋初值1*/
            while(i<=99)                          /*条件满足就循环*/
           {       sum=sum+i;               /*累加到sum中*/
                   i=i+2;                         /*累加值加2*/
           }

          5.转向语句:转向语句有break语句、goto语句、continue语句、return语句。

          6.复合语句:用一对大括号{ }将若干语句顺序组合在一起所形成的语句称为复合语句。C语                言中,除复台语句外的其他所有语句都以分号结束。如:
            {     sum=sum+i;                               /*累加到sum中*/
                   i=i+2;                                        /*累加值加2*/                                                                               }

            7.空语句:空语句只由一个分号构成。如:   ;                                          
               空语句一般用在程序的某个位置上,在功能上并不执行任何实际操作。如空语句用于循                   环语句中的循环体时,可以实现延时功能。

            8.函数定义与调用:函数是完成特定功能的小模块,是C语言中唯一的一种子程序,常常                   在一个C程序中包含若干个函数,复杂的任务通过调用这些函数来完成。如函数:
               int max(int x,int y)                                       /*求最大值的函数*/
               {          int z;                                               /*定义临时变量z*/                                 
                          if(x>y)                             
                             z=x;                                            /*x>y时,z的值等于x*/
                          else
                             z=y;                                           /*x<y时,z的值等于y*/
                          return z;                                       /*结束函数,返回z*/                                                             }
              其中,int max(int x,int y)为函数定义的头部,由函数的返回值类型、函数名、参数表组                成;花括号{ }中的部分称为函数体,函数体由数据表达与流程控制语句组成。
              函数定义后,可以在别的函数中调用该函数。例如,在main()函数中可以有                                c=max(a,b),当程序执行到这里时,首先调用函数max(),并把实际参数a和b的                  值分别传递给函数定义中的形式参数x和y;然后,开始执行函数max()所定义的语句;                当执行到“return z;”时,函数结束运行并把z的值作为返回值,返回到函数调用的位置。

           9.输入与输出:C语言没有提供用于数据输入及输出的语句,所有的输入与输出都是通过                    系统提供的有关函数(如 scanf()和 printf()函数)来实现的。

3,数据的输入与输出

             C语言本身没有提供输入输出语句,所有的数据输入输出功能都是由系统提供的库函数完成的。程序中用到的标准输人输出库函数主要有printf()、scanf()等。使用标准输人输出库函数时要用到“stdio.h”文件,因此在源文件开头需要用预处理命令#include<stdio.h>或#include"stdio.h"将头文件stdio.h包括到源文件中。

1.printf()函数:printf()函数是系统提供的用于在标准输出设备(屏幕)输出数据的                     库函数,其一般调用格式为:
                                   printf("格式控制字符串",输出项表列) 

  格式控制字符串用双引号括起来,表示输出的格式;而输出项表列则是要输出的数据,                  这些数据可以是常量、变量或表达式。
  格式控制字符串中包含两种信息,格式控制说明和普通字符。
       (1)格式控制说明:按指定的格式输出数据,其格式为以%开头的格式控制字符,不同                   类型的数据采用不同的格式控制字符,以说明输出数据的类型、形式、长度、小数位数                   等。例如,int型数据采用%d ,float型和double 型数据都采用%f。
       (2)普通字符:在输出数据时,需要原样输出的字符。

使用printf()函数进行数据输出时需注意:
     (1)格式字符与输出项的类型要一一对应,不同类型的数据所使用的格式字符不同。
     (2)一般情况下,格式字符与输出项的个数应相同。如果格式字符的个数多于输出项的个数,则多余的格式将输出不确定的值;如果格式字符的个数少于输出项的个数,则多余的输出项将不能输出。
    (3)printf()函数中可以没有输出项,此时printf()函数只用来输出一个字符串:也可以有多个输出项;多个输出项之间使用逗号进行分隔。若输出项是表达式时,printf()函数将按从右到左的顺序计算出其值后输出。
    (4)若要在printf()函数中输出字符“%”,则应在格式控制字符串中使用连续两个“%” 。

2.scanf()函敦:scanf()函数是系统提供的用于由标准输人设备(键盘)输人数据的库函数,使用该函数时,由键盘输入数据的值。其一般调用格式为:
                                      scanf(“格式控制字符串",输入项表列)
格式控制字符串用双引号括起来,表示输入的格式:而输入项表列指出各变量的地址(变量名前加&)。
格式控制字符串中包含两种信息,格式控制说明和普通字符。
     (1)格式控制说明:按指定的格式输入数据,其格式为以%开头的格式控制字符,不同类型的数据采用不同的格式控制字符。例如,int型数据采用%d,float型数据采用%f,而double型数据采用%lf(%lf:其中的|是long的首字母,不是数字1)。                                                                               (2)普通字符:在输入数据时,需要原样输入的字符。

 使用scanf()函数进行数据输入时需注意:
     (1)格式字符与输入项的类型、个数要一一对应;输入项必须是地址,不能是变量名。
     (2)格式字符可以指定输入数据所占的列数,系统会截取相应列数的数据
     (3)在输入数据时遇到以下情况则认为数据输入结束:空格、Tab键、回车键、非法输入、指定宽度用户也可以自己指定其他字符作为输入间隔。

3.整型数据的输入和输出:在C语言中,对于整型数据的输入输出所使用的格式控制字符如下表所示。

                                         表1 printf(),scanf()函数中的格式字符(整型数据) 

格式字符含义
d以十进制形式输入/输出带符号整数
o以八进制形式输入/输出无符号整数
x,X以十六进制形式输入/输出无符号整数
u以十进制形式输入/输出无符号整数

                                        表2 printf()函数中的格式修饰符

格式字符含义
l用于输出长整型
-输出结果左对齐,右边补空格
+输出符号(正号或负号)
#对d、u格式字符无影响;对o格式字符,在输出时加前缀0;对x格式字符,在输出时加前缀0x
m指定数据的输出宽度。当数据的实际位数大于m时,则按实际位数输出;当数据的实际位数小于m时,若输出宽度前有“一”则左对齐右补空格,否则右对齐左补空格

                                         表3  scanf()函数中的格式修饰符

格式字符含义
l用于输入长整型
m指定输入数据所占的宽度
*表示本输入项不会赋值给相应的变量。

整型数据的输出示例。

 

 整型数据的输入示例。

 

 

 

 

 

 带有修饰符的整型数据的输入输出示例。

 

4.实型数据的输入和输出:在C语言中,对于实型数据的输入输出所使用的格式控制字符如下表所示。 

函数格式字符含义
printff以小数形式输出单精度和双精度数(保留六位小数)
E,e以指数形式输出单精度和双精度数
g你%f,%e中较短的输出宽度输出单精度和双精度数
scanff以小数形式输入单精度数
E,e以指数形式输入单精度数
lf以小数形式输入双精度数
le以指数形式输入双精度数

说明:(1)在格式字符串的“%”和格式字符之间也可以有一些修饰符,与表2、3相同。
printf()函数中的修饰符“#”对于fe、g格式字符当结果有小数时才给出小数点。
           (2)在输出实型数据时,还可以指定输出的精度,即在格式字符串的“%”和格式字符之间加入“m.n”,其中m指明输出的总位数,n指明小数点后的位数,若实际输出位数大于n,则超出的部分四舍五入;若实际输出位数小于n则不足的部分后补0。
           (3)使用aeanf()函数输入实型数据时不能指明精度,即使用“%.nf”的格式是错误的。

实型数据的输人输出示例。

 

4.字符型数据的输入和输出:字符型数据的输入输出可以调用函数getchar()、scanf()和putchar()、printf()。其中getchar()和putchar()函数只能用于单个字符的输入输出,scanf()和printf()函数可以用于多个字符的输入输出。

4.1,使用scanf()函数和 printf()函数对字符型数据进行输入输出
使用scanf()函数和 printf()函数进行字符型数据的输入输出时,其相应的格式控制字符为“c”,如“printf(”%c%c\n”,a,b)”,也可以在“%”和“c”之间加修饰符,与表3-2、表3-3相同。

字符型数据的输入输出示例。

 

 

 

 4.2,使用 getchar()函数和 putchar()函数对字符型数据进行输入输出
(1)getchar()函数。
设ch是字符型变量,函数getchar()的一般调用格式为:

                                                            ch=getchar();
运行时从键盘输入缓冲区中读取一个字符,并赋值给变量ch由于函数getchar()只能一读入一个字符,若需输入多个字符,就需要多次调用函数,一般采用循环调用的方式。                                 (2)putchar()函数。
函数putchar()的一般调用格式为:

                                                        putchar(输出参数);  
输出一个字符,输出参数是字符型变量或字符型常量。

例:由键盘输入一个字符,将其输出到屏幕。
#include<stdio.h>                                                                                                                            int main()
{         char ch;                                     /*定义一个字符变量*/
          ch=getchar();                            /*输人一个字符给ch*/
          putchar(ch);                              /*输出该字符*/
          return 0;
}

说明:
(1)用getchar()函数得到的字符可以赋给一个字符变量或整型变量,也可以不赋给任何变量、而直接作为putchar()函数的参数。本例可以改写如下:

#include<stdio.h>                                                                                                                                int main()                                                                                                                                             {        putchar(getchar());                                /*输入并输出该字符*/                                                    return 0;                                                                                                                                             }                                                                                                                                                        (2)可以在Printf函数中输出刚接收的字符。如                                                           #include<stdio.h>                                                                                                                           int main()
{             printf("%c",getchar());                       /*%c是输出字符的格式声明*/
return 0;
}

4,数学库函数                                                                                                                                  C语言处理系统提供了许多事先编好的库函数,供用户在编程序时使用,这些事先编好的函数称为库函数
常用的数学库函数有:
①指数函数exp(x):计算e*。如exp(2.3)的值为9.974182。
②绝对值承数fabs(x):计算|xl。如fabs(-2.8)的值为2.8。
③以e为底的对数函数log(x):计算Inx。如log(123.45)的值为4.815836。
④幂函数pow(x,y):计算xy。如pow(1.3.2)的值为1.69。                                                           ⑤平方根函数sqrt(x):计算[2。如sqrt(4.0)的值为2.0。
用户在程序中调用数学库函数时,一定要在程序的开头使用# include<math.h>。

 

 

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值