调用函数,求指点啊~
#include<stdio.h>#include<conio.h>
#include<time.h>
#include<stdlib.h>
void main()
{
int i,j,sum,zongshu=0,duide=0,fenshu=0;
char c;
jisuan: srand(time(NULL));
i=rand()%100;
j=rand()%100;
printf("%d+%d=",i,j);
zongshu=zongshu+1;
scanf("%d",&sum);
if(sum==i+j)
{
duide=duide+1;
fenshu=fenshu+10;
printf("对了,加10分!\n继续吗?<y,n>");
c=getche();
printf("\n");
if(c=='y')
goto jisuan;
else if(c=='n')
{
printf("您共答了%d道题,答对了%d道题。得分:%d\n按任意键继续\n",zongshu,duide,fenshu);
}
else
{
printf("继续吗?<y,n>");
goto jisuan;
}
}
else
printf("错了,不加分!\n继续吗?<y,n>");
c=getche();
printf("\n ");
if(c=='y')
goto jisuan;
else if(c=='n')
{
printf("您共答了%d道题,答对了%d道题。得分:%d\n按任意键继续\n",zongshu,duide,fenshu);
goto jisuan;
}
}
我这个程序运行了下,是正确的,但是我改成以下这个调用函数,为什么就错了呢?怎么改?
void yi()
{
int i,j,sum,zongshu=0,duide=0,fenshu=0;
char c;
jisuan: srand(time(NULL));
i=rand()%100;
j=rand()%100;
printf("%d+%d=",i,j);
zongshu=zongshu+1;
scanf("%d",&sum);
if(sum==i+j)
{
duide=duide+1;
fenshu=fenshu+10;
printf("对了,加10分!\n继续吗?<y,n>");
c=getche();
printf("\n");
if(c=='y')
goto jisuan;
else if(c=='n')
{
printf("您共答了%d道题,答对了%d道题。得分:%d\n按任意键继续\n",zongshu,duide,fenshu);
}
else
{
printf("继续吗?<y,n>");
goto jisuan;
}
}
else
printf("错了,不加分!\n继续吗?<y,n>");
c=getche();
printf("\n ");
if(c=='y')
goto jisuan;
else if(c=='n')
{
printf("您共答了%d道题,答对了%d道题。得分:%d\n按任意键继续\n",zongshu,duide,fenshu);
goto jisuan;
}
}
#include<stdio.h>
#include<conio.h>
#include<time.h>
#include<stdlib.h>
void main()
{
yi();
}