感谢										
					
	
	
	
	      查了一下手册,strcmp函数相等时返回0,大于时返回1,小于是返回-1.
鬼出在了fgets函数,它往数组里多加了一个'\n'
[此贴子已经被作者于2018-1-4 17:38编辑过]
程序代码:#include<stdio.h>
#include<string.h>
#define N 20
int main()
{
    FILE*fp;
    char a;
    char mima[N]="yanglei10086";
    char c[N]={0};
    printf("请输入密码:\n");
    gets(c);
    if(strcmp(c,mima)==0)
    printf("登陆成功\n");
    else
    {
    printf("登陆失败\n");
    printf("按任意键退出\n");
    getch();
    exit(0);
    }
    if((fp=fopen("ceshi.txt","w"))==NULL)
    {
        printf("打开失败\n");
        exit(0);
    }
    printf("文件已打开,请输入内容:\n");
    a=getchar();
    while(a!='\n')
    {
        fputc(a,fp);
        a=getchar();
    }
    fclose(fp);
    return 0;
 }