嵌入式学习第三天笔记(该反思,拖这么久)

3.scanf/扫描键盘

(1)scanf函数的一般形式

Scanf(格式控制,地址表列):“格式控制”的含义同printf函数,“地址表列”是由若干个地址组成的表列,可以是变量的地址,或字符串的首地址

(2)scanf函数中的格式声明:与printf函数中的格式声明相似,以%开始,以一个格式字符结束,中间可以插入附加的字符

(3)需要注意的问题

1scanf函数中的“格式控制”后面应当是变量地址,而不是变量名,例如:如果写成scanf(”%f%f%f”,a,b,c);是不对的,应将”a,b,c”改为”&a,&b,&c”,许多初学者常犯此错误

2如果在“格式控制字符串”中除了格式声明以外还有其他字符,则在输入数据时在对应的位置上应输入与这些字符相同的字符,例如:scanf(“a=%f,b=%f,c=%f”,&a,&b,&c),则在需要用键盘输入数据时,需要按照函数的格式输入a=x,b=x,c=x,而不是直接输入数字;若为scanf(“%f”,&a),用键盘输入数字时则可以直接输入数据(建议有多个数据需要输入时,可以使用多个scanf;在scanf中增加其他字符时需谨慎,增加其他字符后,用键盘输入数据时很麻烦)。

③在用”%c”格式声明输入字符时,空格字符和转义字符中的字符都会作为有效字符输入,例如:
scanf(“%c%c%c”,&c1,&c2,&c3);

在执行此函数时应该连续输入三个字符,中间不要有空格或者回车

④输入数值数据时,如输入空格、回车、Tab键或遇到非法字符(不属于数值的字符),认为该数据结束,如:scanf(“%d%c%f”,&a,&b,&c);   输入数据为:1234a123o.26

第1个数据对应%d格式,在输入1234之后遇到字符‘a’,因此系统认为数值1234后已没有数字了,第1个数据输入到此结束,就把1234赋给变量a,把之后的字符‘a’赋给变量b,由于%c只要求输入一个字符,系统判定该字符已输入结束,因此字符a之后不需要加空格。字符‘a’后边的数值应该赋给变量c,如果由于疏忽把1230.26错打成123o.26,由于123后面出现字母o,则认为该数值数据到此结束,将123赋给变量c,后边其余字符没有被读入。

4.其他输入输出方式

5.输入输出的案例

编写程序,使可以从键盘输入一个小写字母时,在显示屏上显示对应的大写字母,并适用于任何小写字母

6.输入输出的案例作业

(1)简易的计算器

(2)编写程序将“China”译成密码,密码的规律是:分别用每个字母后面的第4个字母代替原来的字母,如:字母A后边第4个字母是E,按此方法,“China”应译为“Glmre”。编写程序,用赋初值的方法使c1,c2,c3,c4,c5这5个变量的值分别对应“China”的五个字母,经过运算,变为“Glmre”,分别用putchar函数和printf函数输出这5个字符。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值