向大佬求助
又重新修改了一遍,运行到一半就中断了,不知道为什么? #include<stdio.h>
程序代码:
#include<stdlib.h> #define Max 10 #include <string.h> typedef struct Log { char account[10]; char password[10]; }Log; typedef struct LOG { Log St[Max]; int n; }LOG; int main() { char account1[10],password1[10]; LOG *sts; Log St[Max]; Log log; int i=0,choose=1; FILE *fp = NULL; char flag = 'y'; fp = fopen("text2.txt","a"); if(fp == NULL) { printf("文件打开失败!\n"); return -1; } while(flag == 'y'||flag == 'Y')//注册过程 { printf("***********************\n"); printf("请输入您想要注册账号:\n\n"); scanf("%s",&log.account); printf("请输入您想要注册密码:\n\n"); scanf("%s",&log.password); printf("***********************\n"); fprintf(fp,"账号:%-10s密码:%-10s",log.account,log.password); fputc('\n',fp); fflush(stdin); printf("继续输入吗,请输入y或Y\n"); scanf("%c",&flag); } sts->St[sts->n]= log; sts->n++; while(choose==1) { printf("***********************\n"); printf("账号是:"); scanf("%s",&account1[10]); printf("\n"); printf("密码是:"); scanf("%s",&password1[10]); printf("***********************\n"); printf("稍等片刻\n"); for(i=0;i<sts->n;i++) { if(strcmp(account1,sts->St[sts->n].account)>0 && strcmp(password1,sts->St[sts->n].password)>0) { printf("登录成功\n"); choose == 0; break; } else { printf("账号或密码错误\n"); choose == 1; break; } } } return 0; }
[此贴子已经被作者于2017-12-20 16:06编辑过]