“scanf("%s", s)”和“scanf("%d", &n)”类似,它会读入一个不含空格、TAB和回车符的字符串,存入字符数组s。注意,不是“scanf("%s", &s)”,s前面没有“&”符号,因为s本身就指向了内存地址。
#include<stdio.h>
char s[15];
int main(){
int sum;
scanf("%s", s); //输入字符串
printf("%s\n", s); //输出字符串
printf("%c\n", s[0]); //输出单个字符
sum = s[0]+s[1]+s[2]+s[3];
printf("%d\n", s[0]);//输出字符的ASCII码
printf("%d\n", sum); //输出字符的ASCII码的和
return 0;
}
如果是字符串数组chars[maxn] [maxl],可以用“scanf("%s", s[i])”读取第i个字符串。