第3章C语言顺序结构

发布 2019-07-04 12:31:17 阅读 3861

第三章基本语句。

本章要求:1.表达式语句,空语句,复合语句。

2.数据的输入与输出,输入,输出函数的调用。

语句概述。程序的执行部分是由语句组成的。 程序的功能也是由执行语句实现的。

3.1 赋值语句。

赋值语句: 是由赋值表达式再加上分号构成的表达式语句。它的一般格式是:变量=表达式;

注意: 由于赋值符”=”右边的表达式也可以又是一个赋值表达式,所以赋值语句又可以是如下形式: 变量=(变量=表达式);

例如 : a=b=c=d=e=5; 根据赋值运算符号的又结合性,该语句实际上等效于: e=5; d=e; c=d; b=c; a=b;

注意:赋值号左边必须是单个变量的表达市;

3.2 输出语句。

在c语言中,所有的数据的输入和输出都是由库函数来完成的!

1. printf()函数。

功能: 按照用户指定的数据格式输出数据。

该函数的调用一般形式为:

printf(“格式控制字符串”,输出列表);

如:int a=65,b=66;

printf(“%d%d”,a,b); 按数字格式连续显示a,b的值*/

printf(“%d %d”,a,b); 按数字格式显示a,b的值,中间用空格隔开*/

printf(“%c,%c”,a,b); 按字符格式显示a,b的值,中间用逗号隔开*/

printf(“a=%d,b=%d”,a,b); 按数字格式显示a,b的值,中间用逗号隔开并用普通字符作为提示*/

printf(“%d”,a+b); 先计算a+b的值,再按数字格式输出*/

所以,它们在屏幕上的输出内容为:

a,ba=65,b=66

格式字符串:

在c中,格式字符串的一般形式是:

标志][输出最小宽度][.精度][长度]类型。

1)类型:类型字符用以表示输出数据的类型,其格式符和意义见下表。

2)输出最小宽度。

用十进制整数来表示输出的最小位数,若实际位数多于定义的宽度,则按实际的位数输出,若实际的位数少于定义的宽度则补以空格或0.

3)精度。精度格式符以“.”开头,后跟十进制整数。

本项的意义是:如果输出数字,则表示小数的位数,如果输出的是字符则表示输出字符的个数;若实际位数大于所定义的精度数,则截去超过的部分。

4)长度。长度格式符为h,l两种,h表示按短整型输出,l表示按长整型输出。

例如:int a=15;

float b=138.3576278;

double c=35648256.3645687;

char d=’p’;

printf(“a=%d,%5d,%o,%x”,a,a,a,a);

printf(“b=%f,%lf,%5.4lf,%e”,b,b,b,b);

printf(“c=%lf,%f,%8.4lf”,c,c,c);

printf(“d=%c,%8c”,d,d);

则输出结果是:

a=15,00015,17,f

b=138.357620,138.357620,138.3576,1.38358e+002

c=35648256.364569,35648256.364569, 35648256.3646

d=p,函数

功能: 是字符输出函数,在显示器上输出单个字符。

格式:putchar(字符变量或字符常量)

如: putchar(‘b’);输出小写字母b

putchar(x); 输出变量x的值。

putchar(‘’);执行转移字符的功能,并不输出字符。

使用本函数前必须要用文件包含命令:#include<>或 #include “

输入语句。一。 scanf()函数。

作用:按指定的格式从键盘输入数据。

调用的一般格式: scanf(“格式控制”,地址列表)

注意: 格式控制是用双引号括起来的,格式说明是由”%”和格式字符组成的,如%d等,地址列表是由若干个地址组成的列表,可以是变量的地址,也可以是字符串的首地址。如:

scanf(“%d%d”,&a,&b);

%d%d”表示按十进制整数形式输入数据,输入数据时,在两个数据之间以一个或多个空格间隔,也可以用回车键,制表键间隔。

a, &b分别表示变量a和变量b 的地址。

格式字符的串的完整形式: %输入数据宽度][长度]类型。

1) 类型。

表示输入数据的类型。

2) 宽度。

用十进制整数指定输入的宽度(即字符数).例如:scanf(“%5d”,&a);

若输入:12345678 则只把12345赋予a

3) 长度。

长度格式符一般是l和h,前者表示输入长整型数据(%ld)和双精度浮点数(%lf),后者表示输入短整型数据。

使用scanf()函数还必须注意的是:

函数中没有精度控制,如:scanf(“%5.2f”,&a);是非法的,不能用此语句输入小数为2位的实数。

函数要求给出变量地址,如果给出变量名是非法的,如:scanf(“%d”,a);是非法的,应改为scanf(“%d”,&a);才是正确的。

3. scanf(“%d,%d,%d”,&a,&b,&c);其中用逗号做间隔符号,所以输入也要逗号做间隔符号。

4. 如输入的数据与输出的类型不一致时,虽然编译能够通过,但结果将不正确。

例如1:main()

int a;

printf("input a number");

scanf("%d",&a);

printf("%ld",a);

例如2: main()

long a;

printf("input a long integer");

scanf("%ld",&a);

printf("%ld",a);

例如3main()

double a;

scanf(“%lf”,&a)

printf(“a=%f”,a);

二。 getchar()函数。

功能: 从键盘输入一个字符。

它的一般形式是:getchar();

通常是把输入的字符赋予一个变量,构成赋值语句如:

#include <>

main()

char a;

a=getchar();

putchar(a);

也可以不赋予任何变量,只作为表达式的一部分,#include <>

main()

putchar(getchar())

常见的“格式控制字符串”的使用举例。

1).%dd的含义是按十进制整型数据格式输出,数据长度为实际长度。

例如:prinf(“%d”,100); 输出结果是:100.

md 若整型的实际位数多于m位时,按实际位数以十进制数形式输出整数,若少于m位时,则在左端补空格。

2).%s表示输出一个字符串。

ms 表示当字符串长度大于指定的输出宽度m时,按字符串的实际宽度输出;当实际长度小于指定宽度m时,则在左端补以空格。

-ms 表示在右端补以空格;

表示输出字符串占m个字符位置,但只输出字符串开头的n个字符,在左端补空格。

例如: printf(“%8.2s”,”name”);

输出结果是: na

3). f按小数形式输出十进制实数(包括单,双精度),实数的整数部分全部输出,并输出6位小数。

例如: printf(“%f”,1000.7654321);

输出结果是: 1000.765432

表示输出的实数至少占m位字符位置,其中n位小数位小数,多余位左端补以空格。

例如: printf(“%10.3f”,1000.7654321);

输出结果是: -1000.765

若实际字符数超出指定的宽度,则整数部分按实际输出,小数依旧只有n位。

例如: printf(“%10.3f”,1111000.7654321);

输出结果是: 1111000.765

4). e 123.4567 1.234567e+002

以指数形式按标准宽度输出十进制实数;标准输出宽度共占13位;分别是:尾数的整数部分为非0数字占1位,小数点占1位,小数占6位,e占1位,指数正负号占1位,指数占3位。例如:

printf(“%e”,1000.7654321);

输出结果是: 1.000765e+003

格式字符%控制输出实数至少占m位,n是尾数部分的小数位数,不足则在左端补以空格,多出则按实际输出。例如: printf(“%10.

9e”,1000.7654321);1.000765432e+003

输出结果是: 1.000765432e+003

若没有指定小数部分的宽度,则按标准宽度输出6位小数例如: printf(“%10e”,1000.7654321);

输出结果是: 1.000765e+003

例1】输入三角形的三边长,求三角形面积。

已知三角形的三边长a,b,c,则该三角形的面积公式为:,其中s = a+b+c)/2

源程序如下:

#include<>

main()

float a,b,c,s,area;

scanf(“%f,%f,%f”,&a,&b,&c);

s=1.0/2*(a+b+c);

area=sqrt(s*(s-a)*(s-b)*(s-c));

printf(“a=%7.2f,b=%7.2f,c=%7.2f,s=%7.2f”,a,b,c,s);

printf(“area=%7.2f”,area);

第2章 答案 基本数据类型及顺序结构程序设计

c float a 1,b a,c b d double a 0.0,b 1.1 10 设有说明语句 char a 72 则变量a a a 包含1个字符 b 包含2个字符 c 包含3个字符 d 说明不合法。11 若变量均已正确定义并赋值,以下合法的c语言赋值语句是 a a x y 5 b x n 2...

C语言知识第4章5 王厚财

for j 1 j 2 i 1 j内层循环用于控制在一行上输出的 号的个数 printf输出星号 printf 换行 编写图形的程序的规律 外层的循环控制图形的行数,内层循环分为三步 每行前的空格数。每行的图形。输出换行。例4.21 百钱百鸡问题 中国古代数学家张丘建在他的 算经 中提出了一个著名的...

建筑实务第3章

练习试卷三。一 单选题。1.在正常使用条件下,保温工程的最低期限为 年。a.10b.8 c.6d.5 2.施工期间未经 签字的墙体材料 保温材料 采暖制冷系统和照明设备不得在建筑上使用或者安装。a 设计师。b 监理工程师。c 项目经理。d 材料员。3.下列 不属于建筑节能的措施。a.围护结构保温措施...