为什么输出字符数组出现乱码?
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
#include<string.h>
void main()
{
srand((unsigned)time(NULL));
char a[40];
int i;
for(i=0;i<20;i++)
{
a[i]=rand()%(122-97+1)+97;
}
printf("%s",a); // 为什么输出部分字符之后,出现了: 烫烫烫烫烫烫烫烫烫烫烫烫? 这些 文字啊? printf("\n");
}
为什么会发生这种情况,如何解决?
注意: 我只是初始化20个字符哦