/*1)可以注册用户名、密码和注册资金;
2)注册后的股民可以购买股票;
3)股票的信息包括股票代码、股票名称、总股数、可交易的股数。*/
#include <stdio.h>
#include <string.h>
int i=0;
/****************************用户信息*****************************/
struct nr
{
char name[16];
char sn[16];
double money;
char daima[10];
char gpming[15];
double gpjg;
//double yu;
}yonghu[500],yh;
/***************************股票行情****************************/
struct gphq
{
char gpdm[5];
char guming[15];
double gpjg;
double zonggu;
double kejiaoyi;
} gphz[10]={{"bj","beijing",66.99,25098,18039},{"tj","tianjin",50.67,30258,23047},{"hd","handan",45.57,25004,17029},
{"gz","guangzhou",77.44,30789,25238},{"gl","guilin",50.01,20984,13701},{"nn","nanning",58.66,23856,19740},
{"dl","dalian",70.43,23699,21108},{"sz","shenzhen",78.99,27644,20643},{"sh","shanghai",78.54,29908,26419},
{"sjz","shjzhuang",64.28,20012,16231}};
/***************************新用户注册***************************/
zhuce()
{
int i=0;
char a[16];
printf("注册:\n");
printf("请输入用户名 (请不要超过15位):");
scanf("%s",yonghu[i].name);
printf("请输入密码 (请不要超过15位):");
scanf("%s",yonghu[i].sn);
printf("请再次输入密码(请不要超过15位):");
scanf("%s",a);
i++;
if((strcmp(a,yonghu[i-1].sn))==0)
{
printf("********注册成功,请重新登陆*******\n");
denglu();
}
else
{
printf("\a\a");
printf("两次输入的密码不一致,重新注册\n");
zhuce();
}
}
/***********************用户登陆***************************/
denglu()
{
int j=0;
printf("登陆:\n");
printf("请输入用户名(请不要超过15位):");
scanf("%s",&yh.name);
printf("请输入密码 (请不要超过15位):");
scanf("%s",&yh.sn);
printf("\n");
for(;j<500;j++)
{
if(strcmp(yh.name,yonghu[j].name)==0)
{
if(strcmp(yh.sn,yonghu[j].sn)==0)
{
//char c;
printf("请 输 入 注 册 资 金 (单位:元):");
scanf("%lf",&yh.money);
yonghu[j].money=yh.money;
printf("***************************您**已**经**成**功**登**陆***************************\n");
printf("您好!%s\n\n",yonghu[j].name);
printf("注册资金 : %lf\n",yonghu[j].money);
//printf("您的股票代码 : %lf\n",yonghu[j].daima);
//printf("您 的 股 票 : %lf\n",yonghu[j].gpming);
printf("********************************************************************************\n");
printf("\n");
gupiaohangqing();
//printf("进行股票交易请输入y或Y\n");
//scanf("%c",&c);
//getchar();
mairu();
}
else
{
printf("\n");
printf("\a\a");
printf("******您输入的用户名或密码错误,请重新输入******\n");
denglu();
}
}
else
{
printf("\n");
printf("************您还没有注册,请先注册,谢谢************\n");
{
int a;
printf("**********注册请输入0,登陆请输入其他数字************\n");
scanf("%d",&a);
switch(a)
{
case 0:zhuce();break;
default:denglu();
}
}
}
break;
}
}
/******************************股票的买入*********************************/
mairu()
{
char s[5];
int i,k;
double guj,n;
printf("请输入购买股票的代码s\n");
dao:scanf("%s",s);
for(i=0;i<10;i++)
{
if((strcmp(s,gphz[i].gpdm))==0)
{
printf("请输入购买股票的数量n\n");
scanf("%lf",&n);
printf("股票代码:%s\t数量:%.0lf\n",s,n);
strcpy(yh.gpming,gphz[i].guming);
if(n*gphz[i].gpjg<=yh.money && n<=gphz[i].kejiaoyi)
{
guj=n*gphz[i].gpjg;
yh.money-=guj;
printf("手中该股票总价值:%lf(元)\n剩 余 资 金 :%lf(元)\n",guj,yh.money);
break;
}
else
{
printf("\a\a");
printf("****您输入的数量无效****\n");
}
}
//else
// zhuyao();
}
if((strcmp(s,gphz[i].gpdm))!=0)
{
printf("\a");
printf("您输入的股票代码无效,请重新输入\n");
}
gupiaohangqing();
printf("继续交易,请输入股票代码\n");
printf("如果退出交易,请输入0\n");
//getchar();
//if((c=getchar())!='0')
scanf("%d",&k);
if(k!=0)
goto dao;//mairu();
}
/*****************************股票的卖出****************************/
void maichu()
{
}
gupiaohangqing()
{
int k;
printf("********************************股***票***行***情******************************\n");
printf("股票代码\t股票名称\t股票价格\t总股数 \t可交易的股数\n");
for(k=0;k<10;k++)
printf("%s \t%s \t%.3lf \t%.0lf \t%.0lf\n",
gphz[k].gpdm,gphz[k].guming,gphz[k].gpjg,gphz[k].zonggu,gphz[k].kejiaoyi);
}
jr()
{
char c;
printf("\t\t\t***************WELCOME*************\n");
printf("确认要进入股票交易大厅请按Enter,否则请按其他\n");
scanf("%c",&c);
if(c!='\n')
exit();
}
/*****************************主函数******************************/
main()
{
char c;
jr();
printf("\t\t**************欢迎来到股票交易大厅**************\n");
printf("\n");
printf("如果您要登录请输入y或Y,否则请按其他进行注册:\n");
scanf("%c",&c);
if(c!='y'&&c!='Y')
zhuce();
else denglu();
}
- 1
- 2
前往页