C语言程序设计:使用scanf与printf处理字符输入输出

需积分: 9 4 下载量 130 浏览量 更新于2024-07-13 收藏 281KB PPT 举报
"浙江大学C语言课程课件,讲解了如何使用scanf和printf进行字符输入输出,以及分支结构的编程知识,包括统计字符数量、查询商品价格等实例。" 在C语言中,`scanf` 和 `printf` 是两个非常重要的输入输出函数。`scanf` 用于从标准输入(通常是键盘)读取数据,而 `printf` 则用于向标准输出(通常是屏幕)打印数据。在提供的示例中,`scanf` 被用来读取用户输入的表达式,`printf` 则用于显示用户输入的表达式。 ```c double value1, value2; char operator; printf("Type in an expression: "); scanf("%lf%c%lf", &value1, &operator, &value2); printf("%.2f %c %.2f", value1, operator, value2); ``` 这段代码首先提示用户输入一个表达式,然后使用`scanf`读取一个浮点数、一个运算符和另一个浮点数。`%lf`是用于读取双精度浮点数的格式说明符,`%c`则用于读取单个字符(运算符)。`&`符号在这里表示传递的是变量的地址,因为`scanf`需要直接修改这些变量的值。`printf`则按照指定的格式显示输入的值,`.2f`指定位数保留两位小数。 接下来,课件介绍了C语言中的分支结构,这主要用于根据条件执行不同的代码块。例如,`if...else`语句和`switch`语句。`switch`语句中的`break`关键字用于结束当前匹配的`case`,防止执行到后续的`case`。逻辑运算和关系运算都是用来比较条件的,但逻辑运算(如`&&`、`||`)关注的是真假结果,而关系运算(如`>`、`<`)则比较两个值的大小。 在`例3-1`中,程序展示了如何统计输入的10个字符中英文字母、数字和其他字符的数量。通过`for`循环,程序逐个读取字符,使用`getchar()`函数。字符类型`char`在C语言中占用1字节,可以存储ASCII码,它既可以表示字母、数字,也可以表示其他特殊字符。在ASCII字符集中,每个字符都有唯一的数值(ASCII码),例如,数字字符'0'到'9',大写字母'A'到'Z',小写字母'a'到'z'都有对应的ASCII值。 逻辑运算(如`if...else if...else`)允许根据条件执行不同的代码段,这里用于判断输入的字符是字母、数字还是其他。当满足特定条件时,相应的计数器(`digit`、`letter`或`other`)会增加。多层缩进的代码结构使得程序逻辑更加清晰易读。 字符数据的输入和输出,如`getchar()`和`printf()`,是C语言中最基本的IO操作。`getchar()`函数用于从标准输入读取一个字符,而`printf()`可以输出格式化的字符串,包括变量的值和字符常量。字符变量可以存储单个字符,例如`ch`,并可以通过比较ASCII码来判断字符的类型,如检查是否在字母或数字范围内。 这个课件涵盖了C语言中基本的输入输出操作,分支结构的使用,以及字符数据的处理,这些都是学习C语言的基础知识。