我有:
char M[20] = "abcdabcdabcdabcd";
我可以将其打印为字符串或字符:
printf("%s\n", M); //print as string
for(i = 0;str[i] != '\0';i++) //print as characters
{
printf("%c",str[i]);
}
我想读取一个包含7个字符的字符串并将其存储在M中,以便以后将其打印为字符串和字符(假设输入的7个字符为:ABCDEFG):
ABCDEFG //output of printf("%s\n", M); when printed as string
ABCDEFG abcdabcd //output of the for loop above
我的回答是:
for(K = 0;K<7;K++)
{
scanf(" %1c", &M[K]);
}
但上述内容无效。
编辑:
输出
ABCDEFGdabcdabcd
两种情况。
答案 0 :(得分:-1)
您应该添加一条声明:M[7] = '\0'
。字符串的最后一个字符应为&#39; \ 0&#39;。