求教,关于回删的问题
俺是初学者,在练习随机数的时候,本来是想弄一个按照输入次数显示随机数的程序,首先输入次数,之后显示一个随机数,等待一秒,然后清除数字,再显示下一个随机数,直到达到输入次数要求后停止。代码如下:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <stdbool.h>
int main(void)
{
int a=0;
time_t seed=0;
time_t now=0;
bool correct=true;
printf("Enter a number:");
scanf(" %d", &a);
seed=time(NULL);
now=clock();
while(correct)
{
correct=true;
srand((unsigned int)seed);
for(int i=1; i<=a; i++)
{
printf(" %d",rand());
for( ;clock()-now < CLOCKS_PER_SEC; );
printf("\r");
}
if(i>a)
{
correct=false;
break;
}
}
printf("byebye..\n\n");
return 0;
}
在编译链接的时候没问题,但运行的时候,无论变量a是多少,显示完一个数字,消除后就会直接跳到最后的“byebye”,感觉上就好像程序完执行\r后就直接跳出所有循环了,,试过用if-goto,do-while,for,各种嵌套都没用,如上面代码用的while套for......也试过用\b代替\r(完全没用)……
请问问题到底出在哪里,如果是\r的问题,那用什么替换它?如果是循环的逻辑上有问题或者其他方面的问题,还请指点迷津...