c程序测打字速度 急!!!

c程序编程序启动时显示”Thequickbrownfoxjumpsoverthelazydog.”,输入光标位于本行结束。用户按回车键后,进行输入,并开始计时。当用户再次... c程序编程序启动时显示”Thequick brown fox jumps over the lazy dog.”,输入光标位于本行结束。用户按回车键后,进行输入,并开始计时。当用户再次按回车键时,计时停止。显示本次所用时间。继续下一次速度测试。
下面是我编写的程序,但是第二次循环按回车键后电脑显示有问题,要退出。。。
求大侠帮忙 急!!!!!
#include<stdio.h>#include<time.h>
int gamestart();
#define NUMBER 100
int main()
{

char a = '\n';

do
{
printf("the quick brown fox jumps over the lazy dog.");
gamestart();
scanf("%c",a);
}
while(a == '\n');

return 0;
}

int gamestart()
{
double tm1,tm2, result;
char c;
int i;
char b[NUMBER];
scanf("%c",&c);
if(c == '\n')
{
tm1 = time(NULL);
}

for(i=0;i<NUMBER;i++){
scanf("%c",&b[i]);
if(b[i]=='\n')
break;
}

tm2 = time(NULL); result = tm2 - tm1;
printf("您所用时间为%lf \n",result);
return 0;
}
展开
 我来答
解0人
2012-11-23 · TA获得超过2389个赞
知道大有可为答主
回答量:1474
采纳率:83%
帮助的人:763万
展开全部
试试下面的:
#include<stdio.h>
#include<conio.h>
#include<time.h>
int gamestart();
int main()
{
char a;
do
{
printf("The quick brown fox jumps over the lazy dog.\n");
gamestart();
printf("Enter y to try again,or other character to quit game:");//输入y重新开始,其他字符结束退出
a=getche();
printf("\n");
}while(a=='y');
return 0;
}
int gamestart()
{
time_t tm1,tm2;
double result;
char c;
int i;
do{
printf("Please press [enter] to start!\n");//按回车开始
c=getch();
}while(c!=13);
tm1=time(NULL);
for(i=0,c=' ';c!='\n';i++) scanf("%c",&c);
tm2 = time(NULL);
result = difftime(tm2,tm1);
printf("Input %d characters in %.0f seconds.\n",--i,result);
return 0;
}
mkmagician
2012-11-23
知道答主
回答量:41
采纳率:0%
帮助的人:25.3万
展开全部
scanf("%c",a);
这里错了,应该是 &a
追问
好吧 谢谢了 我改掉了 那个while循环中的应该是a!='\n',循环2次之后时间都不对 怎么回事啊
追答
你这个代码逻辑很混乱的。

你要输入字符串,可以用
char str[32];
scanf("%s",str);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式