c语言高手看下,谢谢急用~~~

来源:百度知道 编辑:UC知道 时间:2024/06/27 13:03:43
#include <time.h>
#include <stdio.h>
#include <stdlib.h>
int t;
time_t ts,te,d;
main()
{ int n,k=0;
char h;
extern time_t te,ts,d;
extern int t;
void fairy(int m);
void jishi(time_t a);
do
{ ts=time(NULL);
srand((unsigned)time(NULL));
t=rand()%100;
printf("input a number:");
scanf("%d",&n);
fairy(n);
printf("\nif you want to continue this game please enter c:");
scanf("%c",&h);
if(h=='c')
k=1;
else k=0;
}while(k==1);
printf("end");
}
void fairy(int m)
{ extern int t;
time_t ts,te,d;
int r;
void jishi(time_t a);
if(m>t)
{ printf("your number is bigger than t");
printf(" please input another number:");
scanf("%d",&r);
fairy(r);
}
if(m<t)
{

你在这一小段语句前已经有个scanf语句了,因此系统自动将你前面的那次输入所按的回车算作这一次的字符了,因为回车符也算是一个字符,在ASCII码中表示是10或者13.这样的话就会自动跳过输入。
你可以在这个scanf语句之前加一个getch();语句“吃掉”这个回车符。这个语句包含在conio.h头文件中。所以要先#include <conio.h>

#include <time.h>
#include <stdio.h>
#include <stdlib.h>
int t;
time_t ts,te,d;
int main()
{ int n,k=0;
char h;
extern time_t te,ts,d;
extern int t;
void fairy(int m);
void jishi(time_t a);
do
{ ts=time(NULL);
srand((unsigned)time(NULL));
t=rand()%100;
printf("input a number:");
scanf("%d",&n);
fairy(n);
printf("\nif you want to continue this game please enter c:");
scanf("%s",&h);
if(h=='c')
k=1;
else k=0;
}while(k==1);
printf("end");
return 0;
}
void fairy(int m)
{ extern int t;
//time_t ts,te,d;
int r;
void jishi(time_t a);