创建一个usr.txt,其中第一行存储账户名,第二行存储密码。要求:
1. 从终端获取一个用户名和密码
2. 判断与文件中存储的账户名,密码是否一致
3. 如果账户名不一致,则输出用户不存在
4. 如果密码不一致,则输出密码错误
5. 如果均一致,则输出登录成功
#include <stdio.h>
int main(int argc, const char *argv[])
{
char arr[20] = {0};
char brr[20] = {0};
printf("请输入用户名:");
gets(arr);
printf("请输入密码:");
gets(brr);
FILE *p = fopen("user.txt","r");
if(NULL==p)
{
perror("fopen");
return -1;
}
int flag = 0;
int c = 0;
for(int i=0;(c = fgetc(p))!='\n';i++)
{
if(c == arr[i])
{
flag = 1;
}
else
{
printf("用户不存在\n");
flag = 0;
return 0;
}
}
int flag1 = 0;
int d = 0;
for(int j=0;(d = fgetc(p))!='\n';j++)
{
if(d == brr[j])
{
flag1 = 1;
}
else
{
printf("密码错误\n");
flag1 = 0;
break;
}
}
if(flag==1 && flag1==1)
{
printf("登录成功\n");
}
return 0;
}
通过fgetc fputc实现将一个文件的内容复制到另外一个文件中。例如:
将1.txt的内容复制到2.txt中。提示:读取一次,输出一次
#include <stdio.h>
int main(int argc, const char *argv[])
{
FILE *p = fopen("1.txt","r");
if(NULL==p)
{
perror("fopen");
return -1;
}
FILE *q = fopen("2._txt","w");
if(NULL == q)
{
perror("fopen");
return -1;
}
char c = 0;
while(1)
{
c = fgetc(p);
if(EOF == c)
{
break;
}
fputc(c,q);
}
return 0;
}