c语言中这些scanf,printf的用法你知道吗?


一般使用scanf()函数,用到的都是:“%d %f %s %c”(整型,浮点型,字符串,单个字符)
在这里插入图片描述

scanf()带返回值

下面是scanf()的声明

int scanf(const char *format, …)

scanf()函数返回一个int型,表示成功接收对象的个数

代码如下:

#include <stdio.h>
int main()
{	int a,b,c,;
	c=scanf("%d%d",&a,&b); 
	printf("a=%d b=%d c=%d",a,b,c);
	return 0;
} 

运行结果:
在这里插入图片描述

scanf()中’%*'的运用

scanf("%d%%d",&a,&b); 

在上面的情况下录入两个整数时,在输入的时候中间会有空格逗号啥的,但是当你中间用‘,’就不会被接受

‘*’符:用以表示该输入项,读入后不赋予相应的变量,即跳过该输入值。

下面以’%*c’为例:

#include <stdio.h>
int main()
{	char a,c;
	scanf("%c%*c%c",&a,&c); 
	printf("%c %c",a,c);
} 

运行结果:
在这里插入图片描述

printf()实现进制转换

代码:

#include <stdio.h>
int main()
{	int i;
	scanf("%d",&i);
	printf("八进制为:%o\n",i);
	printf("十六进制为:%x\n",i);
	printf("十六进制为:%X\n",i);
	return 0;
}

运行样例:
在这里插入图片描述

printf()中’*'的运用

先看代码:

#include<stdio.h> 
int main()
{
	float a=1.2345;
	int b=5,c=2;
	printf("%*.2f\n",b,a);
	printf("%*.*f\n",b,c,a);
	printf("%*d",b,c);
	return 0;
}

运行结果:
在这里插入图片描述
*在printf里可以代表一个泛整数,可以代表任何整数。它可以出现在位宽的位置,也可以出现在小数位数的位置。

但在printf的双引号外面,必须要有*对应的数值。

printf()的返回值

代码如下:

#include<stdio.h> 
int main()
{
	float a=1.2345;
	int b;
	b=printf("%5.2f\n",a);
	printf("%d",b);
	return 0;
}

运行结果:
在这里插入图片描述

printf的返回值为一个整数类型,是打印出来的字符个数,不是几个数字、几个字符。
上面的例子中(空格,1,.,2,3,\n)六个

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

@玉面小蛟龙

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值