格式转换符%s与%c的区别

教材上的一段源代码:#include<stdio.h>#include<stdlib.h>intmain(){charstring1[20];charstring2[]=... 教材上的一段源代码:#include <stdio.h>
#include <stdlib.h>
int main()
{
char string1[ 20 ];
char string2[] = "string literal";
int i;

printf("Enter a string:");
scanf("%s",string1);

printf("string1 is : %s\nstring2 is :%s\n""string1 with spaces between characters is :\n",string1,string2);

for ( i = 0; string1[ i ] != '\0';i++) {
printf("%c ", string1[ i ] );
}

printf("\n");
system("pause");

return 0 ;

}
这里格式转换符%s与%c的区别是什么啊?

我把后面

%c
换成%s
咋不对啊“?!?!?!!!!!!!
着急!!
展开
 我来答
985967518
推荐于2016-04-14 · 知道合伙人教育行家
985967518
知道合伙人教育行家
采纳数:18027 获赞数:109854
14年本科毕业于河南理工大学,至今就读于河南理工大学攻读硕士学位,从事编程学习已有5年。

向TA提问 私信TA
展开全部

%s 是输出一个字符串(可以由多个字符或者一个字符组成)。

%c是输出一个字符。

printf(“格式控制字符串”, 输出表列)
其中格式控制字符串用于指定输出格式。格式控制串可由格式字符串和非格式字符串两种组成。格式字符串是以%开头的字符串,在%后面跟有各种格式字符,以说明输出数据的类型、形式、长度、小数位数等。

类型字符用以表示输出数据的类型,其格式符和意义如下:

d    以十进制形式输出带符号整数(正数不输出符号)    

o    以八进制形式输出无符号整数(不输出前缀0)    

x,X    以十六进制形式输出无符号整数(不输出前缀Ox)    

u    以十进制形式输出无符号整数    

f    以小数形式输出单、双精度实数    

e,E    以指数形式输出单、双精度实数    

g,G    以%f或%e中较短的输出宽度输出单、双精度实数    

c    输出单个字符    

s    输出字符串    

例如:

//参考代码如下:
#include<stdio.h>   
#include<string.h>   
int main()   
{   
    char c, s[20];       
    strcpy(s, "Hello,World");   
    c='A';   
    printf("c=%c\n", c);     //输出字符 c=A      
    printf("s[]=%s\n", s);//输出数组字符串s[]=Hello,World  
    return 0;  
}
百度网友71b291f
推荐于2016-06-28 · TA获得超过506个赞
知道小有建树答主
回答量:613
采纳率:0%
帮助的人:539万
展开全部
%c表示单个字符,%s表示字符串,由多个字符组成

当然不对了,string1[i]就是字符串string1[20]中下标为i的“字符”而不是“字符串”,所以应该用%c。
for ( i = 0; string1[ i ] != '\0';i++) {
printf("%c ", string1[ i ] );
}
意思就是用for循环依次一个一个地输出string1中的“字符”,'\0'表示字符串结束符,由系统自动添加,记住下标从0开始。而不是1,所以i=0
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zuqhen
2008-11-06 · TA获得超过832个赞
知道小有建树答主
回答量:760
采纳率:0%
帮助的人:485万
展开全部
%s 是字符串 用sccnf可以接n个字符
%c是字符 只能接受一个
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式