2_C语言中的数据类型 (七)printf与scanf
1 字符串格式化输出和输入
1.1 字符串在计算机内部的存储方式
字符串是内存中一段连续的char空间,以’\0’结尾
“”是C语言表达字符串的方式
1.2 printf函数,putchar函数
printf格式字符
字符 |
对应数据类型 |
含义 |
d |
int |
接受整数值并将它表示为有符号的十进制整数 |
hd |
Short int |
短整数 |
hu |
Unsigned short int |
无符号短整数 |
o |
unsigned int |
无符号8进制整数 |
u |
unsigned int |
无符号10进制整数 |
x / X |
unsigned int |
无符号16进制整数,x对应的是abcdef,X对应的是ABCDEF |
f |
float或double |
|
e / E |
double |
科学计数法表示的数,此处"e"的大小写代表在输出时用的“e”的大小写 |
c |
char |
|
s / S |
char * / wchar_t * |
字符串。输出字符串中的字符直至字符串中的空字符(字符串以'\0‘结尾,这个'\0'即空字符) |
p |
void * |
以16进制形式输出指针 |
% |
% |
输出一个百分号 |
printf附加格式
字符 |
含义 |
l |
附加在d,u,x,o前面,表示长整数 |
- |
左对齐 |
m(代表一个整数) |
数据最小宽度 |
0 |
将输出的前面补上0直到占满指定列宽为止不可以搭配使用- |
N(代表一个整数) |
宽度至少为n位不够以空格填充 |
Putchar是显式一个字符的函数
1.3 scanf函数与getchar函数
scanf通过键盘读取用户输入,放入变量中,记得参数一定是变量的地址(&)
int a = 0; int b = 0; scanf("%d", &a);//一定要用&取变量的地址 scanf("%d", &b);//一定要用&取变量的地址 |
Getchar得到用户键盘输入的字符
//#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#define STR "hello"
#define ABC 100 #pragma warning(disable:4996) int main01()
{
//char c = 't';
//printf("%s, %d, %c\n", STR, ABC, c); //printf("%%"); //long l = 100;
//printf("%07ld", l);
putchar('h');
putchar('e');
putchar('l');
return ;
} int main02()
{
int a = ;
int b = ; scanf("%d", &a);//一定要用&取变量的地址
scanf("%d", &b);//一定要用&取变量的地址 printf("a + b = %d\n", a + b);
return ;
} int main()
{
char a = ;
a = getchar();//得到用户键盘的按键 getchar(); char b;
b = a;
b = getchar();//得到用户键盘的按键 printf("a + b = %d", (a - '') + (b - ''));
return ;
}
资料来源:传智播客 仅供学习研究
2_C语言中的数据类型 (七)printf与scanf的更多相关文章
- 2_C语言中的数据类型 (七)类型限定
1.1 类型限定 1.1.1 const const是代表一个不能改变值的常量 1.1.2 volatile 代表变量是一个可能被CPU指令之外的地方改 ...
- 2_C语言中的数据类型 (四)整数与无符号数
1.1 sizeof关键字 sizeof是c语言关键字,功能是求指定数据类型在内存中的大小,单位:字节 sizeof与size_t类型 1.1 int类型 1.1.1 ...
- 2_C语言中的数据类型 (一)2.1.常量和字符串常量
2.1 常量就是在程序中不可变化的量,常量在定义的时候必须给一个初值. 1.1.1 #define 定义一个宏常量 1.1.2 const 定义一个const常量 ...
- 2_C语言中的数据类型 (十)数组
1 字符串与字符数组 1.1 字符数组定义 char array[100]; 1.2 字符数组初始化 char array[100] = {'a', 'b', ...
- 2_C语言中的数据类型 (九)数组
1 数组 1.1 一维数组定义与使用 int array[10];//定义一个一维数组,名字叫array,一共有10个元素,每个元素都是int类型的 array[0] = ...
- 2_C语言中的数据类型 (九)逻辑运算符与if语句、switch、条件运算符?、goto语句与标号
1 条件分支语句 1.1 关系运算符 在C语言中0代表false,非0代表真 1.1.1 < 小于 1.1.2 <= 小于 ...
- 2_C语言中的数据类型 (八)运算符
1 运算符表达式和语句 1.1 基本运算符 1.1.1 = 数据对象:泛指数据在内存的存储区域 左值:表示可以被更改的数据对象 右值:能赋给左值的量 1 ...
- 2_C语言中的数据类型 (十)while、for
1 循环语句 1.1 while while(条件),如果条件为真,循环继续,条件为假,循环结束 while (1)..是死循环的写法 1.2 continu ...
- 2_C语言中的数据类型 (六)浮点数
1.1 浮点float,double,long double类型 1.1.1 浮点常量,变量 Float在32位系统下是4个字节,double在32位系统下是8个字节 小 ...
随机推荐
- [翻译] UIGlossyButton
UIGlossyButton https://github.com/waterlou/UIGlossyButton Feature create standard iPhone buttons wit ...
- Bootstrap后台管理框架
B-JUI http://www.xknaan.com/ B-JUI 前端框架,基于Bootstrap的Jquery UI框架,核心思想脱胎于DWZ(j-ui). BJUI_SSM_DEMO 基于 ...
- tomcat7换端口号调试
1.C:\tomcat\conf\server.xml中修改端口号 2.C:\tomcat\bin\startup.bat批处理文件启动tomcat 3.用ctrl+c结束批处理文件 4.调试结束
- ZT C语言链表操作(新增单向链表的逆序建立)
这个不好懂,不如看 转贴:C语言链表基本操作http://www.cnblogs.com/jeanschen/p/3542668.html ZT 链表逆序http://www.cnblogs.com/ ...
- sql: having使用,及删除重复数据
写了好几年的sql,having语句基本上很少写,这就有一点尴尬了,现在总结一下having的作用,每日整理一下学习文档. having 通常伴随group by使用,过滤group by的数据集. ...
- angular 生命周期钩子 ngOnInit() 和 ngAfterViewInit() 的区别
angular 生命周期钩子的详细介绍在 https://angular.cn/guide/lifecycle-hooks 文档中做了介绍. ngOnInit() 在 Angular 第一次显示数据 ...
- swift的enum基础
其它语言的枚举: 符号化的整型常量的集合: swift的枚举: 可以是任何基础类型和无类型: If you are familiar with C, you will know that C enum ...
- 【bzoj2693】jzptab 莫比乌斯反演+线性筛
题目描述 输入 一个正整数T表示数据组数 接下来T行 每行两个正整数 表示N.M 输出 T行 每行一个整数 表示第i组数据的结果 样例输入 1 4 5 样例输出 122 题解 莫比乌斯反演+线性筛 由 ...
- ubuntu16.04中安装下载工具uget+aria2并配置chrome (stable版)
1.安装uGut sudo apt-get install uget 2.安装aria2 sudo apt-get install arias 3.配置uGet默认下载插件为aria2 菜单栏依次打开 ...
- Java基础加强之并发(二)常用的多线程实现方式
概述 常用的多线程实现方式有2种: 1. 继承Thread类 2. 实现Runnable接口 之所以说是常用的,是因为通过还可以通过JUC(java.util.concurrent)包中的线程池来实现 ...