求教c++编程问题,高手进!!!谢谢
此程序为何无法运行,帮我改下好吗?#include<stdio.h>#include<string.h>#include<stdlib.h>#include<math.h...
此程序为何无法运行,帮我改下好吗?
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <math.h>
#include <time.h>
void main()
{int r;
char a,ch,x,y,*k,*m,*sh;
k=(char *)malloc(20*sizeof(char));//分配可以放得下20个整数的内存空间
m=(char *)malloc(20*sizeof(char));
sh=(char *)malloc(20*sizeof(char));
FILE *fp;
if((fp=fopen("d:\\yd.dat","w"))==NULL)
{ printf("不能打开文件d:\\yd.dat\n"); exit(0);
}
printf("如果本手机充值按#键,其它手机充值按*键\n");
fprintf(fp,"如果本手机充值按#键,其它手机充值按*键\n");
scanf("%c",&a);
fputc(a,fp);
if(a=='*')
{
do
{ printf("请输入被冲值手机号码,以#结束\n");
fprintf(fp,"请输入被冲值手机号码,以#结束\n");
scanf("%s",sh);getchar(ch);
fprintf(fp,"%s\n",sh);
printf("请输入冲值卡号,以#结束");
fprintf(fp,"请输入冲值卡号,以#结束");
scanf("%s",k);getchar(ch);
fprintf(fp,"%s\n",k);
printf("请输入冲值卡的密码,以#结束");
fprintf(fp,"请输入冲值卡的密码,以#结束");
scanf("%s",m);getchar(ch);
fprintf(fp,"%s\n",m);
r=rand()%100+1;
if(r>50)
{ printf("冲值成功,本次冲值为100元.挂机请按*键,继续充值请按#键\n");
fprintf(fp,"冲值成功,本次冲值为100元,挂机请按*键,继续充值请按#键\n");
x==getchar();
fprintf(fp,"%c\n",x);
x=='*';break;
}
else
{ printf("冲值卡号或密码无效,重新输入按#号,挂机按*\n");
fprintf(fp,"冲值卡号或密码无效,重新输入按#号,挂机按*\n");
x=getchar();
fprintf(fp,"%c\n",x);
}while(x=='#');//验证卡号与密码
printf("请你挂机\n");
fprintf(fp,"请你挂机\n");
fclose(fp);exit(0);
}
else if(a=='#')
{
do
{ printf("请输入冲值卡号,以#结束");
fprintf(fp,"请输入冲值卡号,以#结束");
scanf("%s",k);getchar(ch);
fprintf(fp,"%s\n",k);
printf("请输入冲值卡的密码,以#结束");
fprintf(fp,"请输入冲值卡的密码,以#结束");
scanf("%s",m);
getchar(ch);
fprintf(fp,"%s\n",m);
r=rand()%100+1;
if(r>50)
{ printf("冲值成功,本次冲值为100元,请挂机\n");
fprintf(fp,"冲值成功,本次冲值为100元,请挂机\n");break;
}
else
{ printf("冲值卡号或密码无效,重新输入按#号,挂机按*\n");
fprintf(fp,"冲值卡号或密码无效,重新输入按#号,挂机按*\n");
x=getchar();
fprintf(fp,"%c\n",x);
if(x=='*')
break;}
}while(x=='#');
printf("请你挂机\n");
fprintf(fp,"请你挂机\n");
fclose(fp);exit(0);
}
} 展开
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <math.h>
#include <time.h>
void main()
{int r;
char a,ch,x,y,*k,*m,*sh;
k=(char *)malloc(20*sizeof(char));//分配可以放得下20个整数的内存空间
m=(char *)malloc(20*sizeof(char));
sh=(char *)malloc(20*sizeof(char));
FILE *fp;
if((fp=fopen("d:\\yd.dat","w"))==NULL)
{ printf("不能打开文件d:\\yd.dat\n"); exit(0);
}
printf("如果本手机充值按#键,其它手机充值按*键\n");
fprintf(fp,"如果本手机充值按#键,其它手机充值按*键\n");
scanf("%c",&a);
fputc(a,fp);
if(a=='*')
{
do
{ printf("请输入被冲值手机号码,以#结束\n");
fprintf(fp,"请输入被冲值手机号码,以#结束\n");
scanf("%s",sh);getchar(ch);
fprintf(fp,"%s\n",sh);
printf("请输入冲值卡号,以#结束");
fprintf(fp,"请输入冲值卡号,以#结束");
scanf("%s",k);getchar(ch);
fprintf(fp,"%s\n",k);
printf("请输入冲值卡的密码,以#结束");
fprintf(fp,"请输入冲值卡的密码,以#结束");
scanf("%s",m);getchar(ch);
fprintf(fp,"%s\n",m);
r=rand()%100+1;
if(r>50)
{ printf("冲值成功,本次冲值为100元.挂机请按*键,继续充值请按#键\n");
fprintf(fp,"冲值成功,本次冲值为100元,挂机请按*键,继续充值请按#键\n");
x==getchar();
fprintf(fp,"%c\n",x);
x=='*';break;
}
else
{ printf("冲值卡号或密码无效,重新输入按#号,挂机按*\n");
fprintf(fp,"冲值卡号或密码无效,重新输入按#号,挂机按*\n");
x=getchar();
fprintf(fp,"%c\n",x);
}while(x=='#');//验证卡号与密码
printf("请你挂机\n");
fprintf(fp,"请你挂机\n");
fclose(fp);exit(0);
}
else if(a=='#')
{
do
{ printf("请输入冲值卡号,以#结束");
fprintf(fp,"请输入冲值卡号,以#结束");
scanf("%s",k);getchar(ch);
fprintf(fp,"%s\n",k);
printf("请输入冲值卡的密码,以#结束");
fprintf(fp,"请输入冲值卡的密码,以#结束");
scanf("%s",m);
getchar(ch);
fprintf(fp,"%s\n",m);
r=rand()%100+1;
if(r>50)
{ printf("冲值成功,本次冲值为100元,请挂机\n");
fprintf(fp,"冲值成功,本次冲值为100元,请挂机\n");break;
}
else
{ printf("冲值卡号或密码无效,重新输入按#号,挂机按*\n");
fprintf(fp,"冲值卡号或密码无效,重新输入按#号,挂机按*\n");
x=getchar();
fprintf(fp,"%c\n",x);
if(x=='*')
break;}
}while(x=='#');
printf("请你挂机\n");
fprintf(fp,"请你挂机\n");
fclose(fp);exit(0);
}
} 展开
2个回答
展开全部
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <math.h>
#include <time.h>
void main()
{int r;
char a,ch,x,y,*k,*m,*sh;
k=(char *)malloc(20*sizeof(char));//分配可以放得下20个整数的内存空间
m=(char *)malloc(20*sizeof(char));
sh=(char *)malloc(20*sizeof(char));
FILE *fp;
if((fp=fopen("d:\\yd.dat","w"))==NULL)
{ printf("不能打开文件d:\\yd.dat\n"); exit(0);
}
printf("如果本手机充值按#键,其它手机充值按*键\n");
fprintf(fp,"如果本手机充值按#键,其它手机充值按*键\n");
scanf("%c",&a);
fputc(a,fp);
if(a=='*')
{
do
{ printf("请输入被冲值手机号码,以#结束\n");
fprintf(fp,"请输入被冲值手机号码,以#结束\n");
scanf("%s",sh);getchar(ch);
fprintf(fp,"%s\n",sh);
printf("请输入冲值卡号,以#结束");
fprintf(fp,"请输入冲值卡号,以#结束");
scanf("%s",k);getchar(ch);
fprintf(fp,"%s\n",k);
printf("请输入冲值卡的密码,以#结束");
fprintf(fp,"请输入冲值卡的密码,以#结束");
scanf("%s",m);getchar(ch);
fprintf(fp,"%s\n",m);
r=rand()%100+1;
if(r>50)
{ printf("冲值成功,本次冲值为100元.挂机请按*键,继续充值请按#键\n");
fprintf(fp,"冲值成功,本次冲值为100元,挂机请按*键,继续充值请按#键\n");
x==getchar();
fprintf(fp,"%c\n",x);
x=='*';break;
}
else
{ printf("冲值卡号或密码无效,重新输入按#号,挂机按*\n");
fprintf(fp,"冲值卡号或密码无效,重新输入按#号,挂机按*\n");
x=getchar();
fprintf(fp,"%c\n",x);
}
}while(x=='#');//验证卡号与密码
printf("请你挂机\n");
fprintf(fp,"请你挂机\n");
fclose(fp);exit(0);
}
else
if(a=='#')
{
do
{ printf("请输入冲值卡号,以#结束");
fprintf(fp,"请输入冲值卡号,以#结束");
scanf("%s",k);getchar(ch);
fprintf(fp,"%s\n",k);
printf("请输入冲值卡的密码,以#结束");
fprintf(fp,"请输入冲值卡的密码,以#结束");
scanf("%s",m);
getchar(ch);
fprintf(fp,"%s\n",m);
r=rand()%100+1;
if(r>50)
{ printf("冲值成功,本次冲值为100元,请挂机\n");
fprintf(fp,"冲值成功,本次冲值为100元,请挂机\n");break;
}
else
{ printf("冲值卡号或密码无效,重新输入按#号,挂机按*\n");
fprintf(fp,"冲值卡号或密码无效,重新输入按#号,挂机按*\n");
x=getchar();
fprintf(fp,"%c\n",x);
if(x=='*')
break;}
}while(x=='#');
printf("请你挂机\n");
fprintf(fp,"请你挂机\n");
fclose(fp);exit(0);
}
}
#include <string.h>
#include <stdlib.h>
#include <math.h>
#include <time.h>
void main()
{int r;
char a,ch,x,y,*k,*m,*sh;
k=(char *)malloc(20*sizeof(char));//分配可以放得下20个整数的内存空间
m=(char *)malloc(20*sizeof(char));
sh=(char *)malloc(20*sizeof(char));
FILE *fp;
if((fp=fopen("d:\\yd.dat","w"))==NULL)
{ printf("不能打开文件d:\\yd.dat\n"); exit(0);
}
printf("如果本手机充值按#键,其它手机充值按*键\n");
fprintf(fp,"如果本手机充值按#键,其它手机充值按*键\n");
scanf("%c",&a);
fputc(a,fp);
if(a=='*')
{
do
{ printf("请输入被冲值手机号码,以#结束\n");
fprintf(fp,"请输入被冲值手机号码,以#结束\n");
scanf("%s",sh);getchar(ch);
fprintf(fp,"%s\n",sh);
printf("请输入冲值卡号,以#结束");
fprintf(fp,"请输入冲值卡号,以#结束");
scanf("%s",k);getchar(ch);
fprintf(fp,"%s\n",k);
printf("请输入冲值卡的密码,以#结束");
fprintf(fp,"请输入冲值卡的密码,以#结束");
scanf("%s",m);getchar(ch);
fprintf(fp,"%s\n",m);
r=rand()%100+1;
if(r>50)
{ printf("冲值成功,本次冲值为100元.挂机请按*键,继续充值请按#键\n");
fprintf(fp,"冲值成功,本次冲值为100元,挂机请按*键,继续充值请按#键\n");
x==getchar();
fprintf(fp,"%c\n",x);
x=='*';break;
}
else
{ printf("冲值卡号或密码无效,重新输入按#号,挂机按*\n");
fprintf(fp,"冲值卡号或密码无效,重新输入按#号,挂机按*\n");
x=getchar();
fprintf(fp,"%c\n",x);
}
}while(x=='#');//验证卡号与密码
printf("请你挂机\n");
fprintf(fp,"请你挂机\n");
fclose(fp);exit(0);
}
else
if(a=='#')
{
do
{ printf("请输入冲值卡号,以#结束");
fprintf(fp,"请输入冲值卡号,以#结束");
scanf("%s",k);getchar(ch);
fprintf(fp,"%s\n",k);
printf("请输入冲值卡的密码,以#结束");
fprintf(fp,"请输入冲值卡的密码,以#结束");
scanf("%s",m);
getchar(ch);
fprintf(fp,"%s\n",m);
r=rand()%100+1;
if(r>50)
{ printf("冲值成功,本次冲值为100元,请挂机\n");
fprintf(fp,"冲值成功,本次冲值为100元,请挂机\n");break;
}
else
{ printf("冲值卡号或密码无效,重新输入按#号,挂机按*\n");
fprintf(fp,"冲值卡号或密码无效,重新输入按#号,挂机按*\n");
x=getchar();
fprintf(fp,"%c\n",x);
if(x=='*')
break;}
}while(x=='#');
printf("请你挂机\n");
fprintf(fp,"请你挂机\n");
fclose(fp);exit(0);
}
}
展开全部
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <math.h>
#include <time.h>
void main()
{int r;
char a,ch,x,y,*k,*m,*sh;
k=(char *)malloc(20*sizeof(char));//分配可以放得下20个整数的内存空间
m=(char *)malloc(20*sizeof(char));
sh=(char *)malloc(20*sizeof(char));
FILE *fp;
if((fp=fopen("d:\\yd.dat","w"))==NULL)
{ printf("不能打开文件d:\\yd.dat\n"); exit(0);
}
printf("如果本手机充值按#键,其它手机充值按*键\n");
fprintf(fp,"如果本手机充值按#键,其它手机充值按*键\n");
scanf("%c",&a);
fputc(a,fp);
whlile(a=='*')
{
do
{ printf("请输入被冲值手机号码,以#结束\n");
fprintf(fp,"请输入被冲值手机号码,以#结束\n");
scanf("%s",sh);getchar(ch);
fprintf(fp,"%s\n",sh);
printf("请输入冲值卡号,以#结束");
fprintf(fp,"请输入冲值卡号,以#结束");
scanf("%s",k);getchar(ch);
fprintf(fp,"%s\n",k);
printf("请输入冲值卡的密码,以#结束");
fprintf(fp,"请输入冲值卡的密码,以#结束");
scanf("%s",m);getchar(ch);
fprintf(fp,"%s\n",m);
r=rand()%100+1;
if(r>50)
{
printf("冲值成功,本次冲值为100元.挂机请按*键,继续充值请按#键\n");
fprintf(fp,"冲值成功,本次冲值为100元,挂机请按*键,继续充值请按#键\n");
x=getchar();
getchar();
fprintf(fp,"%c\n",x);
if(x=='*')
break;
}
else
{ printf("冲值卡号或密码无效,重
#include <string.h>
#include <stdlib.h>
#include <math.h>
#include <time.h>
void main()
{int r;
char a,ch,x,y,*k,*m,*sh;
k=(char *)malloc(20*sizeof(char));//分配可以放得下20个整数的内存空间
m=(char *)malloc(20*sizeof(char));
sh=(char *)malloc(20*sizeof(char));
FILE *fp;
if((fp=fopen("d:\\yd.dat","w"))==NULL)
{ printf("不能打开文件d:\\yd.dat\n"); exit(0);
}
printf("如果本手机充值按#键,其它手机充值按*键\n");
fprintf(fp,"如果本手机充值按#键,其它手机充值按*键\n");
scanf("%c",&a);
fputc(a,fp);
whlile(a=='*')
{
do
{ printf("请输入被冲值手机号码,以#结束\n");
fprintf(fp,"请输入被冲值手机号码,以#结束\n");
scanf("%s",sh);getchar(ch);
fprintf(fp,"%s\n",sh);
printf("请输入冲值卡号,以#结束");
fprintf(fp,"请输入冲值卡号,以#结束");
scanf("%s",k);getchar(ch);
fprintf(fp,"%s\n",k);
printf("请输入冲值卡的密码,以#结束");
fprintf(fp,"请输入冲值卡的密码,以#结束");
scanf("%s",m);getchar(ch);
fprintf(fp,"%s\n",m);
r=rand()%100+1;
if(r>50)
{
printf("冲值成功,本次冲值为100元.挂机请按*键,继续充值请按#键\n");
fprintf(fp,"冲值成功,本次冲值为100元,挂机请按*键,继续充值请按#键\n");
x=getchar();
getchar();
fprintf(fp,"%c\n",x);
if(x=='*')
break;
}
else
{ printf("冲值卡号或密码无效,重
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询