scanf函数和printf函数

想带大家了解一下我所认识的scanf函数和printf函数,如果了解的不够充分还请大家斧正。

如果我们要用输出一个值,肯定要先创造出一个变量再赋值10。

int a=10

但这样写程序功能就比较弱,因为这个值变成了一个“死值”,只能是10,(除非给他重新赋值)这只会更麻烦,那如果这个输入的值可以由我们来控制,那不是很方便了,程序只会更灵活。

  • 所以后来就延伸出来scanf函数的概念;

  • scanf函数概念是“通过键盘给程序中的变量赋值”
    函数原型是:

#include <stdio.h>
int scanf( const char *format,… );

scanf(“输入控制操作符”,输入参数);

这个函数第一个参数是“输入控制符”所规定的格式数据,然后输入参数值为地址变量。

输入控制符类似于:%d、%c、%s、%f…

#include<stdio.h>

int main()
{
    
    
	int a = 0;
	scanf("%d", &a);//&a:a是变量,&是取地址的符号
	
	return 0;
}

要想把 scanf函数弄明白,首先要清楚的是:我们从键盘输入的全部都是字符。比如从键盘输入 123,它表示的并不是数字 123,而是字符 ‘1’、字符 ‘2’ 和字符 ‘3’。这是为什么呢?

  • 操作系统内核就是这样运作的。但这里需要用到“输入控制符”,将字符‘1’,‘2’,‘3’,又转化为十进制的数字:123;

返回值

  • 有些时候我们可能会忽略scanf的返回值,只是当他是个输出函数,但是他是有返回值的并且返回类型是int类型。
  • 返回的是输出值的个数。
int main()
{
    
    
	int a = 0;
	int ret=scanf("%d", &a);
	printf("%d", ret);
	return 0;
}

在这里插入图片描述

我们也可能使用下面这多代码进行多行输入:

while (scanf("%d", &a) != EOF){
    
    }

printf()

printf() 是 C 语言标准库函数,用于将格式化后的字符串输出到标准输出。标准输出,即标准输出文件,对应终端的屏幕。printf() 申明于头文件 stdio.h。

扫描二维码关注公众号,回复: 16138593 查看本文章

函数原型:

int printf ( const char * format, … );

返回值

-正确返回输出的字符总数,错误返回负值。

code:

int main()
{
    
    
	int ret=printf("xiaoyu");
	printf("\n%d\n", ret);
	return 0;
}

运行结果

xiaoyu
6

看完返回值,这边又回到printf()参数这边;

int printf ( const char * format, … );
参数format:以指定的数据转译的空终止多字节字符串的指针

printf()的输出格式:

  • 在前面提到的“输入控制操作符”,对其进行调整:

负号:-(可使输出格式:左对其,右边填上空格);

printf("未使用:*%10d*\t使用:*%-10d*\n\n",100,100); //10指的是宽度

输出格式
在这里插入图片描述

  • 另一种.(精度)+格式字符
printf("%f", 3.1415926);

输出结果

3.141593

如果想要精确到小数点两位数:如小数点后两位(.2+格式字符)

printf("%.2f", 3.1415926);

输出格式

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/m0_66780695/article/details/130038007