c语言中,puts和printf函数有什么区别?

希望详细

puts和printf函数的区别如下:

1、不同的换行符

puts()函数会自动在字符串末尾添加一个换行符,这意味着它会自动换行,而printf()函数没有此功能。

2、输出内容不同

puts()函数只能输出字符串,不能对输出和转换指令进行标准化,而printf()函数可以。

扩展资料:

调用格式

1、printf

格式字符串包含三种类型的对象:(1)字符串常量;(2)格式控制字符串;(3)转义字符。字符串常量按原样输出并在显示中用作提示。输出项在输出表列中给出,格式控制字符串和每个输出项在数量和类型上应一一对应。

格式控制字符串是以%开头的字符串,后跟各种格式控制字符,以指示输出数据的类型、宽度、精度等。

2、puts

(1)puts()函数只能输出字符串,不能输出值或执行格式转换。

(2)字符串可以直接写入puts()函数。例如:如:puts("Hello,world!")。

(3)puts与printf相同,puts()函数的作用与printf语句相同。注意:puts将在输出字符串之后自动输出回车。

参考资料来源:百度百科-puts

参考资料来源:百度百科-printf

温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-07-10

1、换行不同

puts()函数会在字符串末尾自动的添加换行符,也就是说它会自动的换行,而printf()函数就没有这项功能。

2、输出内容不同

puts()函数只能输出字符串,不能进行标准化的输出与转换说明,而printf()函数可以。

扩展资料

调用格式

1、printf

格式化字符串包含三种对象,分别为:(1)字符串常量;(2)格式控制字符串;(3)转义字符。
字符串常量原样输出,在显示中起提示作用。输出表列中给出了各个输出项,要求格式控制字符串和各输出项在数量和类型上应该一一对应。

其中格式控制字符串是以%开头的字符串,在%后面跟有各种格式控制符,以说明输出数据的类型、宽度、精度等。

2、puts

(1) puts()函数只能输出字符串, 不能输出数值或进行格式变换。

(2)可以将字符串直接写入puts()函数中。如:puts("Hello, world!")。

(3)puts 和 printf的用法一样,puts()函数的作用与语句“printf“的作用相同。注意:puts在输出字 符串后会自动输出一个回车符。

参考资料来源:百度百科-puts

参考资料来源:百度百科-printf

本回答被网友采纳
第2个回答  推荐于2017-10-06

     puts()函数只用来输出字符串,没有格式控制,里面的参数可以直接是字符串或者是存放字符串的字符数组名。

      printf()函数的输出格式很多,可以根据不同格式加转义字符,达到格式化输出。

      puts()函数的作用与语句printf("%s\n",s);的作用形同。

第3个回答  推荐于2017-09-02
puts是输出一行字符串的

printf可根据格式控制符输出任意数据本回答被提问者采纳
第4个回答  2019-10-27
本来都可以的,但你是执行完puts(sza);后,指针已经移动到最后了,才执行的printf("%s",sza);当然什么也输不出来了
相似回答