C语言中的标准输入输出 scanf()函数

C语言中,从键盘读入是使用函数scanf();
例如:从键盘读入一个int类型的数据10;

int n;
scanf("%d", &n);

int m,n;
scanf("%d %d", &m, &n);

scanf()函数接收两类参数,其中,%d表示输入数据的类型,&是取地址符。这两类参数可以不只有一种,但是两类参数数量必须一一对应(有几个%d,就得有几个变量)。scanf()函数返回值是能够正确读取数据的个数。这段代码的意思就是:声明一个变量n,我从键盘读入一个int类型的数据,将这个数据送入到变量n的地址里面去。%d就是指数据类型,如果是float类型的数据就用%f,double类型的数据用%lf,char类型的数据用%c。字符串类型的输入是%s,但是这时是没有&符号的。

char str[10];
scanf("%s", str);

输入字符串时,str就是字符串的首地址,所以不需要&(取地址符)。

C语言中的输出函数是printf(),此函数用于把数据输出到窗口。printf()函数的返回值是输出字符的个数,若出错,则返回负数。printf()函数也接受两种类型的参数,和scanf()一样。

int n = 10;
printf(“%d\n”, n);

char m = ‘a’;
char n = ‘b’;
printf(“%c %c\n”, m,n);

其中%d和%c表示输出数据的类型,\n表示输出换行,m,n表示变量,只不过输出的时候不在使用&取地址符了。
注意:数据定义类型和输入输出类型必须正确,否则数据的计算将不准确,如果你要将一个float类型的数据强制转化为int类型的数据输出,编译器便会强制截掉小数部分,不会进行四舍五入。

细节:
计算机中的整数和浮点数本质上就不同,存储方式更是千差万别,所以即使同是32位数据float和long类型,他们表示的数据不一样。C语言允许写混合数据的表达式,但是他会进行自动类型转换,造成数据的不确定性,所以,我们应该注意每一种数据的类型,最好亲自去为数据进行强制转化。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值