求大神看看代码为什么错了
#include <stdio.h>#include "stdlib.h"
#include <string.h>
void save();
void load(char n[],char p[]);
void main()
{
char name[10],pas[10];
int i=0;
char N[10],P[10];
save();
load(name,pas);
printf(" ※※※※※※※※\n");
printf(" ※用户登录系统※\n");
printf(" ※※※※※※※※\n");
while(i<=2)//循环输入信息
{
printf( "输入用户名:");
scanf("%s",N);
printf("输入密码:");
scanf("%s",P);
if((strcmp(name,N)==0)&&(strcmp(pas,P))==0)//比较用户名与密码
{
printf("welcome to use the software\n");
break;//跳出循环
}
else if(i<2)
printf("请重新输入:\n");
i++;
}
if(i>=3)
{
printf("password error!you can not use software\n");
}
}
void save()
{
char n[10],p[10];
printf("请设定你的用户名:");
scanf("%s",n);
printf("请设定你的密码:");
scanf("%s",p);/*指向文件的指针*/
FILE *fp;;
if((fp=fopen("record.txt","wb"))==NULL) /*打开文件,并判断打开是否正常*/
{
printf("打开文件错误\n");
exit(1);
}
printf("\n*********存储信息***********\n");
fprintf(fp,"\r\n");
fprintf(fp,"%-7s%-7s",n[10],p[10]);
fprintf(fp,"\r\n");
fclose(fp); /*关闭文件*/
}
void load(char n[10],char p[10])/*读入函数,参数为结构体数组*/
{
FILE *fp;; /*指向文件的指针*/
if((fp=fopen("record.txt","rb"))==NULL) /*打开文件*/
{
printf("打开文件错误\n");
exit(1);
}
printf("\n*********读取信息************\n");
fscanf(fp,"%7s%7s",n[10],p[10]);
fclose(fp); /*关闭文件*/
printf("\n********读入文件成功!!!******\n\n");
}
跪求大神解答。
题目如下:
提示用户输入用户名和密码,判断是否合法用户(假设合法的用户名是
“abc”、密码是 123456) ,如果合法,显示“welcome to use the software”,
否则要求重新输入, 允许输入3次, 若3次都错, 显示“password
error!you can not use software”