前言
学一门编程语言,不能编写让用户输入数据然后输出处理后的数据的程序那么就等于没学,而在C语言中可以用printf() 和 scanf() 函数进行输入和输出操作。这两个函数是内置的库函数,定义在 stdio.h(头文件)中。
printf() 函数
printf() 函数用于输出操作。它将给定的语句打印到控制台上。
printf() 函数的语法如下:
printf("format string",argument_list);
-
format string:格式字符串,包含了要打印的文本和占位符,格式字符可以是 %d(整数)、%c(字符)、%s(字符串)、%f(浮点数)等。
-
argument_list:可变参数列表,根据格式字符串中的占位符进行替换
比如下面的例子,使用printf输出1+1的结果
#include<stdio.h>
int main() {
int number1=1;
int number2=1;
printf("%d + %d = %d", number1,number2,number1+number2);
return 0;
}
运行结果如下:
如果printf中的占位符错误的话就会下面这种情况
scanf() 函数
scanf() 函数用于输入操作。它从控制台读取输入数据。
scanf("format string",argument_list);
打印给定数字的立方的程序
下面是一个简单的 C 语言示例,它从用户获取输入并打印给定数字的立方。
#include<stdio.h>
int main(){
int number;
printf("请输入一个数字:");
scanf("%d",&number);
printf("数字的立方是:%d ",number*number*number);
return 0;
}
输出结果:
请输入一个数字:5
数字的立方是:125
scanf("%d",&number) 语句从控制台读取整数,并将给定的值存储在 number 变量中。
printf("数字的立方是:%d ",numbernumbernumber) 语句在控制台上打印数字的立方。
打印两个数字的和
下面是一个简单的 C 语言示例,用于输入和输出操作,打印两个数字的求和结果。
#include<stdio.h>
int main(){
int x=0, y=0, result=0;
printf("请输入第一个数字:");
scanf("%d", &x);
printf("请输入第二个数字:");
scanf("%d", &y);
result = x + y;
printf("两个数字的和为:%d ", result);
return 0;
}
输出结果:
请输入第一个数字:9
请输入第二个数字:9
两个数字的和为:18
常用的占位符
下面是C语言中常用的占位符
- 整数占位符:
%d
:以十进制形式打印整数。%u
:以十进制形式打印无符号整数。%o
:以八进制形式打印整数。%x
、%X
:以十六进制形式打印整数,分别使用小写和大写字母。
- 浮点数占位符:
%f
:以小数形式打印浮点数。%e
、%E
:以指数形式打印浮点数,分别使用小写和大写字母。%g
、%G
:以%f或%e中较短的形式打印浮点数,分别使用小写和大写字母。
- 字符和字符串占位符:
%c
:打印字符。%s
:打印字符串。
- 指针占位符:
%p
:以十六进制形式打印指针。
- 宽度和精度控制:
%nd
:指定输出字段宽度为n,不足n位则在左侧补空格。%.nf
:指定浮点数的小数点后的位数为n。
- 其他占位符:
%%
:打印百分号。%n
:将已打印的字符数保存到参数中。