C语言输入输出问题
char s[20];
scanf("%s", &s[0]);
printf("%s",s[0]);
```、
大家可以帮我看一下为什么错了吗
s[0]是字符串s的第一个字符。
字符串输入不需要加&
scanf("%s", s);
printf("%s",s);
%c格式对应的是单个字符。
%s格式对应的是字符串。
例:
char a;
char b[20];
-
scanf("%c",&a); //只能输入一个字符。
scanf("%s",b); //不超过20字符的字符串,字符串下标为0~19。
如果为了录入某个字符要用%c噢,s是字符串了噢。输出也要%c。
#include <stdio.h>
int main(){
char s[20];
scanf("%c",&s[0]);//如果只是为了录入某个字符那要用%c噢
printf("%c",s[0]);//输出也需要%c
}
//一般应该这样写
#include <stdio.h>
int main(){
char s[20];
scanf("%s",s);
printf("%s",s);//直接输出整个字符串
printf("\n%c",s[0]);//输出字符串的数组中的某个
}
运行: