关于#c语言#的问题,请各位专家解答!不能输入

#include<stdio.h>
#include<string.h>
int main(void){
int n,j,a,b,c,d,min,k;
char passwd[10000001];
while(scanf("%d",&n)==1){
scanf("%s",&passwd);
for(j=0,a=0,b=0,c=0,d=0;j<=n;j++){
switch(passwd[j]){
case 'k':a++;break;
case 'i':b++;break;
case 'n':c++;break;
case 'g':d++;break;
}
if(b<=c&&b<=d) min=b;
else if(b<=c&&b>d) min=d;
else if(b>c&&b<=d) min=c;
else if(b>c&&b>d) {
if(c<=d) min=c;
else min=d;
}
if(b<=c&&b<=d) min=b;
else if(b<=c&&b>d) min=d;
else if(b>c&&b<=d) min=c;
else if(b>c&&b>d) {
if(c<=d) min=c;
else min=d; }
switch(min/n){
case 0:k=min;
break;
default:k=min/n;
break;
}
printf("%d",n);
}
}
return 0;
}

数组开的太大了,栈都炸了,放到main()函数外面去