第三章 顺序结构
本章目标:
- 基本框架
- :star:c语言标准输入输出
1.顺序结构框架
定义:从main()开始,由上往下一条一条的执行.
顺序结构的程序设计框架:
#include<>
main()
{
输入
计算
输出
}
2.标准输出输出函数
标准输入输出函数使用前必须加上对应的头文件
2.1 printf()函数,标准输出
printf函数有两种格式,一种是原模原样输出,一种是输出读入的值
格式1:printf("格式控制");
功能:按格式控制指定的格式输出数据.
如:
printf("a=7,b=10");
显示如下:
a=7,b=10
格式2:printf("普通/占位符",输出列表的值);
功能:按格式将值输出
什么叫普通?什么叫占位符
普通就是无%,占位符就是有%
普通字符按照原样输出,占位符以%开始,被替换
输出值,先计算后输出 |
如:
printf("a=%d,b=%d",3,4+7);
显示如下:
a=3,b=11;
2.1.1 printf占位符汇总
占位符字符最重要的有5种,下面给出全部:
- d 带符号的十进制整数
- u 无符号的十进制整数
- o 无符号的进制整数
- X或x 无符号的十六进制整数
- c 输出一个字符,不输出单引号
- s 输出一个字符串 输出时不输出双引号
- f 输出一个实型数.隐含输出6位小数
- E或e 输出指数形式的实型数
2.2 scanf(),标准输入
格式:scanf("普通/占位符",地址列表);
如:
int x;
scanf("%d",&x);
下面通过5个考点来深入理解scanf()的具体用法:
考点1:"普通/占位符",输入时普通字符必须原样输入int a,b;
scanf("%d,%d",&a,&b);
输入:3,5
考点2:"占位符是%d%d",输入时4种输入
>在输入过程中连续读入%d%d,怎么区分开呢?
>空格和tab混合分开
>实际的输入过程中,可以敲空格或者回车来将两个%d分开,当然了,也可以混合使用空格和回车
c int a,b; scanf("%d%d%d",&a,&b,&c); 输入: a空格b空格c a回车b回车c a回车b空格c a空格b回车c
考点3:"普通/占位符%c%c",输入时一种输入
>由于空格回车也算一个字符,所以%c%c的输入必须连续
c char ch1,ch2 scanf("%c%c",&ch1,&ch2); 输入:ab
考点4:"普通/占位符%c%d%c混合输入",输入时1种输入
#include<stdio.h>
int main()
{
char ch1,ch2;
int x;
scanf("%c%d%c",&ch1,&x,&ch2);
printf("%c%d%c",ch1,x,ch2);
}
输入:a1b
输出 a1b
2.3 字符数据的输入输出
putchar()和getchar()
2.3.1 putchar()
格式:putchar(字符常量或字符变量)
功能:输出一个字符但不输出单引号
例子:
#include<stdio.h>
int main()
{
putchar('a'); //输出的是a
putchar('\n');
putchar(100); // 100当成asc码值为100的字符
putchar('\n');
// putchar("100"); // 直接报错,因为putchar里面是字符常量或字串变量,不能输入字符串
}
2.3.2 getchar()
格式:getchar()
功能:接收一个从键盘输入的字符
getchar()没有任何参数,函数的返回值就是输入的字符,意味着getchar可以读入回车空格等等 |