关于#C语言#的问题,如何解决?

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]);//输出字符串的数组中的某个 
}

运行:

img

img