nefu -咸鱼二手交易平台作业
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/46f24d48e49fbcd3f841b3763ae887c0.png)
-1 :
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
#include "header.h"
int findtime(char tim[])
{
time_t timep;
struct tm *p;
time (&timep);
p=gmtime(&timep);
int a=p->tm_mday;
int b=1+p->tm_mon;
int c=1900+p->tm_year;
int i;
char str[11];
char st[5];
char sr[5];
itoa(c,str,10);
str[4]='-';
itoa(b,st,10);
if(b>=10)
{
str[5]=st[0];
str[6]=st[1];
}
else
{
str[5]='0';
str[6]=st[0];
}
str[7]='-';
itoa(a,sr,10);
if(a>=10)
{
str[8]=sr[0];
str[9]=sr[1];
}
else
{
str[8]='0';
str[9]=sr[0];
}
str[10]='\0';
strcpy(tim,str);
return 0;
}
0 :
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include "header.h"
void welcome()
{
printf("\n\n");
printf(" *****************************************************************\n");
printf(" *****************************************************************\n");
printf(" *****************************************************************\n");
printf(" *********************** **********************\n");
printf(" *********************** 欢迎进入闲鱼系统 **********************\n");
printf(" *********************** **********************\n");
printf(" *****************************************************************\n");
printf(" *****************************************************************\n");
printf(" *****************************************************************\n");
printf("\n\n");
}
void loginmenu()
{
printf("\n *************请输入操作类别:*************\n\n");
printf(" =========================================================================\n");
printf(" | 1.用户登录 2.用户注册 3.管理员登录 4.退出程序 |\n");
printf(" =========================================================================\n");
}
void menu_1()
{
printf("\n *************请输入操作类别:*************\n\n");
printf(" ==========================================================================\n");
printf(" | 1.注销登录 2.我是买家 3.我是卖家 4.个人信息管理 |\n");
printf(" ==========================================================================\n");
}
void menu_1_2()
{
printf("\n *************请输入操作类别:*************\n\n");
printf(" ==============================================================================================================\n");
printf(" | 1.查看商品列表 2.购买商品 3.搜索商品 4.查看历史订单 5.查看商品详细信息 6.返回用户主页面 |\n");
printf(" ==============================================================================================================\n");
}
void menu_1_3()
{
printf("\n *************请输入操作类别:*************\n\n");
printf(" ============================================================================================================\n");
printf(" | 1.发布商品 2.查看发布商品 3.修改商品信息 4.下架商品 5.查看历史订单 6.返回用户主页面 |\n");
printf(" ============================================================================================================\n");
}
void menu_1_4()
{
printf("\n *************请输入操作类别:*************\n\n");
printf(" ===================================================================\n");
printf(" | 1.用户名 2.密码 3.手机号码 4.地址 |\n");
printf(" ===================================================================\n");
}
void personal()
{
printf("\n *************请输入操作类别:*************\n\n");
printf(" ================================================================================================\n");
printf(" | 1.返回用户主页面 2.修改信息 3.查看信息 4.充值 5.修改密码 |\n");
printf(" ================================================================================================\n");
}
void managerview()
{
printf("\n *************请输入操作类别:*************\n\n");
printf(" =======================================================================================================================\n");
printf(" | 1.查看所有商品 2.查看商品详见信息 3. 查看所有订单 4.查看所有用户 5.删除用户 6.下架商品 7.注销 |\n");
printf(" =======================================================================================================================\n");
}
1 :
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include "header.h"
void user_readout(user *userhead)
{
user *usertmp=NULL;
FILE *f_user=fopen("userinformation","rb");
if(f_user==NULL)
{
printf("cannot open this file\n");
exit(0);
}
while(1)
{
if(fgetc(f_user)==EOF)
break;
usertmp=malloc(userlen);
fread(usertmp,userlen,1,f_user);
usertmp->next=userhead->next;
userhead->next=usertmp;
}
fclose(f_user);
}
void user_readin(user *userhead)
{
user *p=userhead;
FILE *f_user=fopen("userinformation","wb");
if(f_user==NULL)
{
printf("cannot open this file\n");
exit(0);
}
p=p->next;
while(p!=NULL)
{
putc(';',f_user);
fwrite(p,userlen,1,f_user);
p=p->next;
}
fclose(f_user);
}
user *userinit()
{
user *userhead=malloc(userlen) ;
if(userhead==NULL)
{
printf("内存分配不成功!\n");
exit(1);
}
userhead->next=NULL;
return userhead;
}
int freeuser(user *userhead)
{
user *p=userhead->next;
user *q;
while(p!=NULL)
{
q=p->next;
free(p);
p=q;
}
userhead->next=NULL;
}
void refreshuser(user *userhead)
{
user_readin(userhead);
freeuser(userhead);
user_readout(userhead);
}
int idcheck(char idtmp[],user *userhead)
{
user *p=userhead;
p=p->next;
while(p!=NULL)
{
if(strcmp(p->id,idtmp)==0)
return -1;
p=p->next;
}
return 0;
}
void inpassword(char p[])
{
int x=0;
while(1)
{
char ch=getch();
if(ch==8)
{
if(x==0);
else
{
x--;
printf("\b \b");
}
}
else
if(ch!=13)
{
p[x++]=ch;
putchar('*');
}
else break;
}
p[x]='\0';
}
void userregister(user *p,user *userhead)
{
char temp[21];
printf("请输入你的用户ID号:\n");
while(gets(p->id))
{
if(idcheck(p->id,userhead)==0)
break;
else printf("ID账号已被注册,请重新输入ID账号:\n");
}
printf("请输入你的用户名:\n");
gets(p->name);
while(1)
{
printf("请输入你的密码:\n");
inpassword(p->password);
printf("\n请再次输入你的密码:\n");
inpassword(temp);
if(strcmp(temp,p->password)!=0)
{
printf("\n两次密码输入不一致!请重新输入!");
}
else break;
}
printf("\n请输入你的联系方式:\n");
gets(p->phone);
printf("请输入你的家庭住址:\n");
gets(p->address);
p->money=0;
}
int usercreat(user *userhead)
{
user *usernew=malloc(userlen);
if(usernew==NULL)
{
printf("当前系统空间不足,不能创建用户!\n");
return -1;
}
userregister(usernew,userhead);
usernew->next=userhead->next;
userhead->next=usernew;
return 0;
}
int registercheck(user *userhead, char tmpid[],char tmppassword[])
{
user *p=userhead;
p=p->next;
while(p!=NULL)
{
if(strcmp(tmpid,p->id)==0&&strcmp(tmppassword,p->password)==0)
{
return 0;
}
p=p->next;
}
return -1;
}
void userin(user *userhead,char tmp_id[],char tmp_password[])
{
printf("请输入账号:\n");
char tmpid[7],tmppassword[21];
while(gets(tmpid))
{
if(idcheck(tmpid,userhead)==0)
{
printf("ID账号不存在!请重新输入账号:\n");
continue;
}
printf("请输入密码:\n");
inpassword(tmppassword);
if(registercheck(userhead,tmpid,tmppassword)==0)
{
printf("\n 登录成功!\n");
strcpy(tmp_id,tmpid);
strcpy(tmp_password,tmppassword);
break;
}
printf("\n 密码错误,请重新登录!\n");
printf("请输入账号:\n");
}
}
int changeinfor(char tmpid[],user *userhead)
{
user *p=userhead;
user *tmpuser=NULL;
p=p->next;
while(p!=NULL)
{
if(strcmp((p->id),tmpid)==0)
{
tmpuser=p;
break;
}
p=p->next;
}
int fom=0;
menu_1_4();
printf("请输入你想修改的信息:\n");
scanf