C++打卡day2——格式化输入

1.还是这句话    重要!!!:导库

有个记忆的小技巧:cs t di o:cs枪战,他玩,第0

#include<cstdio>

一、scanf用法

   基础信息:
scanf(格式控制符,变量地址); 

   代码样例(注意,后面有重点!)

#include<cstdio> 
int main(){
	int n;
	scanf("%d",&n); //读入整数    %d的用法day1讲过了 
	printf("%d",n); //day1讲过了 
	return 0; 
}

敲黑板!!!重点来了!

在我们所写的scanf的代码中,所定义的n前有一个“&”,

& 是 取地址符(adress),它的作用是让系统为整数n

腾出一个内存大小,是随机的地址位,我们在指针时细讲

但打代码时千万不要忘了它!

scanf与cin最大的区别就是一个需要提示输入内容的类型,而cin不用

而scanf所需加载时间短(在下面看看例子)

e.g.1 scanf方法

#include<cstdio> 
int main(){
	char c;//输入字符
	scanf("%c",&c);
	int d1;//输入整数
	scanf("%d",&d1);
	float f;输入小数
	scanf("%f",&f);
	return 0;
	 
}

结果:

e.g.2 cin方法

#include<iostream>
using namespace std;
int main(){
	char c;
	int d1;
	float f;
	cin>>c>>d1>>f;
	return 0;
	 
}

结果:

再总结一下scanf可读取的数据类型:

二、scanf输入一串数

      基础信息咯~
scanf(格式控制字符串,变量地址列表);

看个例子吧!

#include<cstdio>
int main(){
	int n;
	double f;
	scanf("%d%lf",&n,&f);//在格式控制符连着写就行,变量地址列表要用逗号分隔 
	printf("%d %f",n,f); //在格式控制符应有空格,输出列表要用逗号分隔 
	return 0;
	 
}

给大家几个注意事项!

 接下来是另一个重点(敲黑板!!!)

的使用

“ * ”是忽略符,可让计算机忽略这项值(没听懂吧,看个例子)

#include<cstdio>
int main(){
	int a,b;
	scanf("%d%*d%d",&a,&b);//在%d与%d之间有一个%*d,让计算机忽略的我们输入的第2项 
	printf("%d %d",a,b); 
}

输出结果:

域宽格式符的使用:

在%d等格式控制符中加入数字,控制输入的长度

举个栗子:

#include<cstdio>
int main(){
	int a,b;
	scanf("%4d%d",&a,&b);//在%d之间有一个4,让计算机把输入的前四个数字存入a,剩下的存入b 
	printf("%d %d",a,b); 
}

看一看结果

//作者自思考:可以用它做一个数字分割器

列表的读取

与printf相同,scanf可以读取列表(窃喜)

我们要用到大名鼎鼎的  “%s”

基本:

scanf("%s",字符串名称);

例子:

#include<cstdio>
int main(){
	char s[100];
	scanf("%s",s);
	printf("[%s]",s);//老知识也回顾一下~ 
	return 0; 
}

离我的想法又近了一步!

给大家补充一个易错点!

在输入时,空格和回车都会被当作输入间隔符,导致了下面的问题 

如何解决问题呢(O_O)?

Level 2版 字符串输入输出

需要把我们的“%s”再次升级-------Level 2!

scanf("%s%s",字符串名称1,字符串名称2); 

 例子:

#include<cstdio>
int main(){
	char s1[100],s2[100],s3[100];
	scanf("%s%s%s",s1,s2,s3);
	printf("[%s]\n",s1);
	printf("[%s]\n",s2);
	printf("[%s]\n",s3);
	return 0; 
}

输出结果:

成功啦!

直接上代码!

#include<cstdio>
int main(){
	int a,b,c;
	scanf("%d,%d,%d",&a,&b,&c);//在格式控制符之间加入你喜欢的间隔符,输入时输进去就会消失 
	printf("%d %d %d",a,b,c);
	return 0; 
}

结果:

浅浅的来一些附加格式符

来个小总结

总结一下:scanf的使用方法虽然比cin难一点,但使用的效率,功能都比cin好

三、来点小题

回家思考!

再见ヾ( ̄▽ ̄)Bye~Bye~!

  • 12
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值