void main(){
char tech[30][30],fname[50];
int tn,i=0;
FILE *fp;
printf("File name\n");
gets(fname);
printf("No of lines\n");
scanf("%d",&tn);
for(i=0;i<tn;i++){ //gets here will not take anything for the first line
printf("%d",i+1);
gets(tech[i]);
}
fp=fopen(strcat(fname,".txt"),"w");
for(i=0;i<tn;i++)
fprintf(fp,"%s\n",tech[i]);
fclose(fp);
}
在for
循环中(在程序中提到)gets()
不接受第一行的任何字符,它直接要求第二行输入。为什么呢?