第4章顺序结构程序设计
第4章 顺序结构程序设计
主要内容 C的语句 简单的输入输出 顺序结构程序设计 要求:熟练掌握用合适的格式输入/输出不 同类型的数据;会编写简单的程序
◼ 主要内容 ◼ C的语句 ◼ 简单的输入输出 ◼ 顺序结构程序设计 ◼ 要求:熟练掌握用合适的格式输入/输出不 同类型的数据;会编写简单的程序
41C语句 了解C的基本语句 简单语句:又称表达式语句 在一个表达式的后面加上分号即构成表达式语句,例如 X=0; k++, printf("n welcome") 2.复合语句:用一对花括号{}括起来的多个语句序列, 有时称为分程序。(见下页例42) 注意:复合语句以“}结束,后面不需再加分号 3.流程控制语句:用来控制程序中语句的执行顺序。C 语言中提供了9中流程控制语句(下面的章节将要学 习)
4.1 C语句 ◼ 了解C的基本语句: 1. 简单语句:又称表达式语句。 在一个表达式的后面加上分号即构成表达式语句,例如 x=0; k++; printf("\n welcome"); 2. 复合语句: 用一对花括号{ }括起来的多个语句序列, 有时称为分程序。(见下页例4.2) 注意:复合语句以“}”结束,后面不需再加分号。 3. 流程控制语句:用来控制程序中语句的执行顺序。C 语言中提供了9中流程控制语句(下面的章节将要学 习)
■例4.2重复(10次):输入两个整数,输出两数之和 maino i int a, b,c,n *定义变量语句* for(n=1;n<=10;n++) fo语句控制重复10次* printf((" In input2 Integers:)2*提示用户输入* scanf("%0%od",&a,&b);/输入两个整数分别赋给a b*/ c=atb /*求和并赋给c*/ printf("sum:%dn",c);/*输出和*
◼ 例4. 2重复(10次):输入两个整数,输出两数之和。 main() { int a, b, c, n; /*定义变量语句*/ for(n=1; n<=10; n++) /*for语句控制重复10次*/ { printf("\n input 2 integers:"); /*提示用户输入*/ scanf("%d%d", &a, &b); /*输入两个整数分别赋给a, b*/ c=a+b; /*求和并赋给c*/ printf("sum: %d\n", c); /*输出和*/ } }
42输入输出概述 输入输出:是相对于计算机的主机而言的。 输入是指从计算机的外部设备将数据读入主机,输出是指将 数据从主机送到外设(显示器、打印机、磁盘等) ■C语言本身没有专门的输入输出语句,输入输出操作是通过 函数调用来实现的。编程时必须先将输入输出函数所在的 头文件: stdio.h包含进本程序中。使用命令: include" stdio.h”或# include< stdio.h C语言中的标准输入输出设备约定为用户终端,即键盘和 显示器。 特别说明:调用输入函数时应该明确:数据从哪儿输入 (省略为键盘)、以什么格式输入、输入的数据存放在哪里 调用输出函数时应该明确:要输出什么内容、按什么格式输 出、输出到哪个设备(省略为显示器)
4.2 输入/输出概述 ◼ 输入输出:是相对于计算机的主机而言的。 输入是指从计算机的外部设备将数据读入主机,输出是指将 数据从主机送到外设(显示器、打印机、磁盘等)。 ◼ C语言本身没有专门的输入输出语句,输入输出操作是通过 函数调用来实现的。编程时必须先将输入输出函数所在的 头文件:stdio.h 包含进本程序中。使用命令: #include "stdio.h " 或 #include ◼ C语言中的标准输入输出设备约定为用户终端,即键盘和 显示器。 ◼ 特别说明:调用输入函数时应该明确:数据从哪儿输入 (省略为键盘)、以什么格式输入、输入的数据存放在哪里; 调用输出函数时应该明确:要输出什么内容、按什么格式输 出、输出到哪个设备(省略为显示器)
43字符输入输出函数: getchar()和 putchar() 1. putchar(函数: 调用格式: putchar(c) 其中,c是要输出的字符,它可以是字符型或整型的常 量和变量。当c为整型时,其值应是要输出的字符 的ASC码,范围是0~255 函数功能:输出一个字符到显示屏的当前光标处
4.3 字符输入/输出函数: getchar( ) 和 putchar( ) 1. putchar()函数: 调用格式: putchar(c); 其中,c是要输出的字符,它可以是字符型或整型的常 量和变量。当c为整型时,其值应是要输出的字符 的ASCII码,范围是0~255. 函数功能:输出一个字符到显示屏的当前光标处
例4.3输出三个字符:A*B。 include“ stdio h main( i char cl; int c2 cl=A;c2=66;/*给变量c1,c2赋值* putchar( n') *输出字符"n putchar(c1 输出变量c1中的字符 A1*/ putchar(el) /*输出字符*!* putchar(c2) 输出变量c2中的字符B*/
例4.3 输出三个字符:A*B。 #include “stdio.h” main() { char c1; int c2; c1='A'; c2=66; /*给变量c1,c2赋值*/ putchar( '\n' ); /*输出字符'\n'*/ putchar(c1); /*输出变量c1中的字符: 'A'*/ putchar( '*' ); /*输出字符'*' */ putchar(c2); /*输出变量c2中的字符:'B'*/ }
getchar(函数: 调用格式: getchar0 函数功能:从标准输入设备(一般指键 盘)读取一个字符,返回该字符的ASCI 码
◼2. getchar()函数: 调用格式: getchar() 函数功能:从标准输入设备(一般指键 盘)读取一个字符,返回该字符的ASCII 码
例4.4输入两个字符,输出每个字符及其ASCⅡ码。 #include stdio. hI" main( i char c, d printf(" An enter two characters:");/提示用户* getchar() d=getchar() printf("%c:%dmn",c,c);/输出c中的字符及 ASCII 码*/ print t n0c:00d,0
例4. 4 输入两个字符,输出每个字符及其ASCII码。 #include "stdio.h" main() { char c, d; printf("\n enter two characters:"); /*提示用户*/ c=getchar( ); d=getchar( ); printf("%c:%d\n", c, c); /*输出c中的字符及ASCII 码*/ printf("%c:%d", d, d); }
口运行结果:(在TC中演示其执行过程) enter two characters: AB K A:65 B:66 ■特别提示:从键盘输入数据时,并不是键入一个字 符后立即将其送入主机,而是等到按下回车键后 才能把这一行字符送入计算机的数据缓冲区,然后 输入函数从缓冲区的第一个字符开始逐个读取数据。 只有当缓冲区中无数据可读时,才等待用户输入。 思考 1)若输入:ab,结果如何?(注:a,b之间有一个 空格,空格也是一个字符,与"n样是不可见字符)
◼ 运行结果: (在TC中演示其执行过程) enter two characters:AB ↙ A:65 B:66 ◼ 特别提示:从键盘输入数据时,并不是键入一个字 符后立即将其送入主机,而是等到按下回车键后, 才能把这一行字符送入计算机的数据缓冲区,然后 输入函数从缓冲区的第一个字符开始逐个读取数据。 只有当缓冲区中无数据可读时,才等待用户输入。 ◼ 思考: (1) 若输入:a b↙,结果如何?(注::a, b之间有一个 空格,空格也是一个字符,与'\n'一样是不可见字符)