puts和printf区别?
发布网友
发布时间:2022-04-24 18:07
我来回答
共5个回答
热心网友
时间:2023-10-30 06:49
puts(str) //str为一字符串
则自动在str的后面加一个换行符\n
而printf(str)则需要手动加上\n
同理,gets接收字符串时,会将字符串后面的\n去掉,而用scanf接收时,会在字符串后面加上\n
所以,puts要和gets搭配,scanf和printf搭配使用。
热心网友
时间:2023-10-30 06:50
C中的PUTS函数只用来输出字符串,没有格式控制,它里面的参数就是存放字符串的字符数组的数组名就可以了,
PRINTF函数输出格式有很多,类型也不用说了,可以根据不同格式加些转义字符以达到格式华的输出,比如换行,制表等等....
热心网友
时间:2023-10-30 06:50
在C中,,puts相当于put char是输出char字符,,printf是最后显示的时候,要用的函数
热心网友
时间:2023-10-30 06:51
c中的puts函数只用来输出字符串,没有格式控制,它里面的参数就是存放字符串的字符数组的数组名就可以了,
printf函数输出格式有很多,类型也不用说了,可以根据不同格式加些转义字符以达到格式华的输出,比如换行,制表等等....
scanf里面我们无法输入空格,当你输入空格时,空格后面的内容就没有放到你指定的变量里面。例如
char
a[4];
scanf
("%s",a);//输入一个字符串,%s是表示字符串
for
(i=0;i<=4;i++)
printf("%c",a[i]);
运行的时候你输入i
am试试,它得到的是i,而后面的
空格和am就没有了。
换句话说,scanf当遇到空格时,它就把它当做'\0',就是自动停止
如果你用gets的话
char
a[4];
a=gets();//输入一个字符串,%s是表示字符串
for
(i=0;i<=4;i++)
printf("%c",a[i]);
你还是输入i
am的到的就是i
am
热心网友
时间:2023-10-30 06:51
而且,puts只能输出字符串