'
# printf
1.基本用法
printf是C语言中常用的输出函数,用于将数据打印到控制台或文件中。它的基本语法如下:
int printf(const char *format, ...);
其中,format
是一个字符串,用于指定输出的格式,...
表示可变参数,即要输出的数据。
在format
字符串中,可以插入不同的控制字符来表示要输出的不同类型的数据,常用的格式字符如下:
%d
:输出整数类型数据%f
:输出浮点数类型数据%c
:输出字符类型数据%s
:输出字符串类型数据%p
:输出指针类型数据%x
:输出十六进制整数类型数据
除了格式字符外,还可以使用修饰符来调整输出的格式,如:
%-10d
:左对齐输出,并占用10个字符的宽度%10d
:右对齐输出,并占用10个字符的宽度%.2f
:保留两位小数输出浮点数%10.2f
:右对齐输出,并保留两位小数,总宽度为10个字符
示例代码:
int num = 10;
float pi = 3.14159;
char ch = 'A';
char str[] = "Hello, World!";
int *ptr = #
printf("整数:%d\n", num);
printf("浮点数:%f\n", pi);
printf("字符:%c\n", ch);
printf("字符串:%s\n", str);
printf("指针:%p\n", ptr);
printf("十六进制整数:%x\n", num);
printf("左对齐输出:%10d\n", num);
printf("右对齐输出:%-10d\n", num);
printf("保留两位小数输出:%.2f\n", pi);
printf("右对齐输出,保留两位小数:%10.2f\n", pi);
输出结果:
整数:10
浮点数:3.141590
字符:A
字符串:Hello, World!
指针:0x7ffee3d2798c
十六进制整数:a
左对齐输出: 10
右对齐输出:10
保留两位小数输出:3.14
右对齐输出,保留两位小数: 3.14
2.多个参数
int num1 = 10;
int num2 = 20;
float pi = 3.14159;
char str[] = "Hello, World!";
printf("两个整数:%d, %d\n", num1, num2);
printf("一个整数和一个浮点数:%d, %.2f\n", num1, pi);
printf("一个整数和一个字符串:%d, %s\n", num1, str);
两个整数:10, 20
一个整数和一个浮点数:10, 3.14
一个整数和一个字符串:10, Hello, World!
# scanf
1.scanf用法
scanf函数是C语言中的输入函数,用于从标准输入流(通常是键盘)读取输入,并根据指定的格式进行解析。
scanf的基本用法如下:
#include <stdio.h>
int main()
{
int num;
printf("请输入一个整数:");
scanf("%d", &num);
printf("您输入的整数为:%d\n", num);
return 0;
}
在上述示例中,"%d"是格式控制字符串,用来指定输入的数据类型为整数。&num是用来获取输入的整数值存储的变量地址。
在scanf函数中,可以使用多个格式控制字符串和对应的变量地址,以读取多个输入:
#include <stdio.h>
int main()
{
int num1, num2;
printf("请输入两个整数,用空格隔开:");
scanf("%d %d", &num1, &num2);
printf("您输入的两个整数为:%d和%d\n", num1, num2);
return 0;
}
在上述示例中,"%d %d"中的空格表示需要读取两个整数,并用空格隔开。
除了%d以外,还有其他格式控制字符串,可以用来读取不同类型的数据。常用的格式控制字符串如下:
- %d:读取整数
- %f:读取浮点数
- %c:读取字符
- %s:读取字符串
使用scanf函数时,需要注意以下几点:
- 格式控制字符串中的格式要与实际输入的数据类型相匹配,否则可能导致错误。
- scanf函数返回成功读取的参数个数,可以根据返回值判断输入是否成功。
- scanf函数不会自动消耗换行符(\n),如果输入中包含换行符,可能导致下次输入出错。可以使用getchar函数来消耗换行符。
- scanf函数在读入字符时不会过滤空格,制表符,tab键。
总之,scanf函数是C语言中常用的输入函数,通过指定格式控制字符串,可以从标准输入流中读取不同类型的数据。