第6课 printf()用法

发布时间:

1. printf("字符串\n");

js
# include <iostream>
using namespace std;
int main()
{
    printf("Hello World!\n");     // \n表示换行
    return 0;
}
   

输出结果为:

js
Hello World!

   

2. printf("输出控制符",输出参数);

js
# include <iostream>
using namespace std;
int main()
{
    int i = 10; 
    float m=1.23;
    printf("%d\n", i);  //    %d是输出控制符,d 表示十进制,后面的 i 是输出参数 
    printf("%f\n",m);   //   %f是输出控制符,f 表示十进制浮点数,后面的 m是输出参数 
    printf("%.3f",m);   //   %f 输出控制符,f 十进制浮点数,.3 小数点后保留3位, m是输出参数 
    printf("%d %d\n", i, i);
    printf("i = %d, m = %f\n", i, m);
    return 0;
}
   

输出结果为:

js
10
1.23.0000
10 10
i=10,m=1.230000

   

3. 如何输出 %\ 和双引号

js
# include <stdio.h>
int main(void)
{
    printf("%%  \n");
    printf("\\  \n");
    printf("\"\"  \n");
    return 0;
}
   

输出结果为:

js
%d
\
""
   
格式控制符说明
%c输出一个单一的字符
%hd、%d、%ld以十进制、有符号的形式输出 short、int、long 类型的整数
%hu、%u、%lu以十进制、无符号的形式输出 short、int、long 类型的整数
%ho、%o、%lo以八进制、不带前缀、无符号的形式输出 short、int、long 类型的整数
%#ho、%#o、%#lo以八进制、带前缀、无符号的形式输出 short、int、long 类型的整数
%hx、%x、%lx %hX、%X、%lX以十六进制、不带前缀、无符号的形式输出 short、int、long 类型的整数。如果 x 小写,那么输出的十六进制数字也小写;如果 X 大写,那么输出的十六进制数字也大写。
%#hx、%#x、%#lx %#hX、%#X、%#lX以十六进制、带前缀、无符号的形式输出 short、int、long 类型的整数。如果 x 小写,那么输出的十六进制数字和前缀都小写;如果 X 大写,那么输出的十六进制数字和前缀都大写。
%f、%lf以十进制的形式输出 float、double 类型的小数
%e、%le %E、%lE以指数的形式输出 float、double 类型的小数。如果 e 小写,那么输出结果中的 e 也小写;如果 E 大写,那么输出结果中的 E 也大写。
%g、%lg %G、%lG以十进制和指数中较短的形式输出 float、double 类型的小数,并且小数部分的最后不会添加多余的 0。如果 g 小写,那么当以指数形式输出时 e 也小写;如果 G 大写,那么当以指数形式输出时 E 也大写。
%s输出一个字符串

作业 初级篇:

1 使用printf输出"Hello, World!"
2 定义一个整数变量a=100,使用printf输出"The number is: 100"
3 定义一个双精度浮点数pi=3.14159265358979,使用printf输出,保留2位小数
4 定义一个字符变量ch='A',使用printf输出该字符及其ASCII码值
5 定义一个字符串name="Alice",使用printf输出"Name: Alice"

进阶篇

1 使用printf同时输出整数、浮点数和字符串,格式为"ID: 5, Score: 98.50, Name: Bob"
2 输出整数123,要求占10个字符宽度,右对齐
3 输出字符串"Hello",要求占15个字符宽度,左对齐
4 输出整数42,要求占6位宽度,不足部分用0填充 printf("%06d\n", num);
5 将十进制数255分别以十六进制(小写和大写)、八进制形式输出

高级篇

1 输出3.1415926535,分别保留1位、3位、6位小数
2 制作一个简单的成绩表,包含姓名(左对齐,10字符宽)、分数(右对齐,6字符宽,2位小数)
3 定义unsigned int变量,并分别以有符号和无符号形式输出,观察差异
4 输出"Progress: 75%",注意printf中如何输出%字符
5 创建一个学生信息输出程序,要求:
学生ID:整数,占6位,前导零填充
姓名:字符串,左对齐,占12字符宽
年龄:整数,占3字符宽
GPA:浮点数,保留2位小数,占5字符宽
输出格式美观对齐

作业

1 将整数2保留3位小数输出;
2 将小数3.14159265358979保留3位小数,6位宽度左对齐输出;
3 将小数3.14159265358979保留3位小数,6位宽度右对齐输出;
4 将整数2,6位宽度右对齐输出;
5 第一行将整数225105,第二行将整数118533别6位宽度左对齐输出;
6 第一行将整数225105,第二行将整数118533别6位宽度右对齐输出;
7 输出整数42,要求占6位宽度,不足部分用0填充

题库练习

练习1 a*b问题计算分数的浮点数值
练习2 温度表达转化算分数的浮点数值
练习3 计算并联电阻的阻值
练习3 计算并联电阻的阻值