C语言笔记 · 输出函数(printf()、putchar()、puts())

C语言笔记 · 输出函数(printf()、putchar()、puts()),第1张

C语言笔记 · 输出函数(printf()、putchar()、puts())

目录

 输出函数

1. printf()

2. putchar

3. puts

备注:此文所有代码均在Visual Stdio 2022 IDE中完成


 输出函数

输出函数 输出函数作用printf()输出各种数据类型putchar()输出字符puts()输出字符串,结束后自动换行 1. printf()

#include //函数头

int printf(const char *format,...); //函数声明

//format表示你要输出数据格式,const表示修饰的变量不可改变,“...”表示占位 *** 作符

printf("格式控制符",待打印项); //一般形式

         ptintf()函数scanf()函数工作原理几乎相同。格式控制符控制输出的数据形式,待打印项必须与格式控制符一一对应。下面例举了常见的格式控制符。

格式控制符 格式控制符输出%c输出一个单一的字符%s输出一个字符串%d有符号十进制整数%u无符号十进制整数%f浮点数,十进制计数法%e、%E浮点数,e计数法%g、%G根据值不同自动选择%f或%e(%E)。%o无符八进制整数%x、%X无符号十六进制整数%p指针%%打印一个百分号        

        在%和控制字符之间插入修饰符可修饰基本的格式控制符。达到更好的输出效果。 

printf()修饰符 格式控制修饰符含义-(标记)待打印项左对齐,从字段(有长度)左侧开始打印该项。例:"%-8d"+(标记)待打印项右对齐。符号值为正,前面显+号。符号值负,前面显-号。例:"%+8d","%+8.3f"#(标记)把结果转换另一种形式,八进制为0;十六进制为0x或0X。对于浮点数格式,#保证了即使后面没有任何数字,也打印一个小数点字符。对于%g和%G格式,#防止结果后面0被删除。例:"%#o","%3X","#8.0f"0(标记)对于数值格式,前导0填充字段宽度。整数格式,出现-标记或指定精度,则忽略改标记。例:"%08d","%08.3f"数字最小字段宽度。如果该字段不能容纳待打印的数字或字符串,系统会使用更宽字段。例:"%8d","%8.3f".数字精度。对于%s,表示打印字符的最大数量。对于整形,表示打印数字最小位数。只使用.表示其后跟随一个0,所以%.f和%.0f相同。例:"%5.2f"打印一个浮点数,字符宽度为5字符,其中小数点后有两有效数字h和整形控制字符一起使用,表示有符号或无符号short、int类型。例:"%hd","%hu"l和整形控制字符一起使用,表示有符号或无符号long int类型。和浮点数控制字符一起使用,表示double类型。例:"%ld","%lf"ll和整形控制字符一起使用,表示有符号或无符号 long long int类型。例:"%lld","%8llu"L和浮点控制字符一起使用,表示有符号或无符号long double类型。例:"%Lf","10.4Le"

 示例一

#include
int main(void)
{
    int a=678;
    float b = 3.555667;
    float c = 1234.567;
    printf("[%2d]n", a);	//修饰符2位,678三位自动拓宽
    printf("[%+6d]n", a);  //6位宽度,3位有效数字
    printf("[%06d]n", a);
    printf("[%-6d]nn", a);	//6位宽度,从右打印
		
    printf("[%f]n", b);
    printf("[%6.3f]n", b); 
    printf("[%e]n", b);
    printf("[%16.3E]nn", c);//e计数法表示小数点右边位数(3位)
    return 0;
}

示例二

#include
int main(void)
{
    char ch[33] = "xyz abc!";
    printf("[%2s]n", ch);
    printf("[%12.5s]n", ch);
    printf("[%012.5s]n", ch);
    printf("[%-12.5s]nn", ch);//打印字符串五位字符
	
    printf("*%5d* *%05.3d* *%-5.3d*n",6,6,6,6);
    printf("*% 5d* *% 5d*n",20, -20);
    printf("*%5x* *%5X* *%5#x*n", 31, 31, 31);
    printf("*%5o* *%#5o*n", 31, 31);
    return 0;
}


2. putchar

putchar函数基本格式:int putchar( int Character);

① 当Character为一个被单引号(英文状态下)引起来的字符时,输出该字符(注:该字符也可为转义字符)。如:putchar('W'); putchar('t');

② 当Character为一个介于0~127(包括0及127)之间的十进制整型数时,它会被视为对应字符的ASCII代码,输出该ASCII代码对应的字符。如:putchar(127);

③ 当Character为一个事先用char定义好的字符型变量时,输出该变量所指向的字符。

#include
int main(void)
{
    char a = 'w';
    putchar('Y');    putchar('n');
    putchar(122);    putchar('n');
    putchar(a);    putchar('n');
    return 0;
}


3. puts

puts()函数用来向标准输出设备(屏幕)写字符串并换行。

其函数原型为:int puts(const char *s);

        s可以是字符指针变量名、字符数组名,或者直接是一个字符串常量。输出时只有遇到 '' 也就是字符串结束标志符才会停止。puts()函数的作用与语printf("%sn", s)相同。

#include
int main(void)
{
	char ch[13] = "hello word!";
	puts(ch);
	printf("%sn", ch);
	puts("一句卧槽行天下");
	return 0;
}

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5711590.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存