当前位置: 代码迷 >> C语言 >> 新手一个问题
  详细解决方案

新手一个问题

热度:256   发布时间:2007-12-22 17:53:39.0
新手一个问题
在TC中能不能先输出下面的,在输出上面的.如输出
1  4  7
2  5  8
3  6  9
先输出1 在停一会输出2.停一会再输出3,停一会然后输出4,依次输完.
如果能的话.请高手写一完整的程序.先谢
搜索更多相关的解决方案: 中能  输出  

----------------解决方案--------------------------------------------------------
什么意思啊  你的数是怎么存放的?
----------------解决方案--------------------------------------------------------
提示: 作者被禁止或删除 内容自动屏蔽

坚持到底
2007-12-22 10:17:49
闪闪4521

等 级:新手上路
帖 子:196
专家分:0
注 册:2007-11-30
  得分:0 
要暂停一会的话,可以用Sleep()函数
可是要跳到上一行继续输出我就不知道了,有其他人懂吗?
----------------解决方案--------------------------------------------------------
利用数组加for循环就OK了
----------------解决方案--------------------------------------------------------
回复 5# 的帖子
楼上的能不能给点代码做为提示,我好想学习一下。。
----------------解决方案--------------------------------------------------------
TC可以用gotoxy(x,y)来定位光标在屏幕上的位置,暂停可以用delay(毫秒);来实现,或者都可以通过调用系统中断来实现......要包含相应的头文件,我这里没安TC,没记错的话应该是<stdlib.h>和<conio.h>,也可能是<dos.h>

如果是vc的话,可以调用一个API函数,叫SetConsoleCursorPosition();具体参数不记得了,暂停可以调用Sleep(毫秒);函数,要包含头文件<windows.h>
----------------解决方案--------------------------------------------------------
这是楼主想要的Turboc 3.0 编译.
/*缓慢输出1-9的数字 */
#include<stdio.h>
#include<dos.h>
#include<conio.h>

int main(void)
{
  int a[9]={1,2,3,4,5,6,7,8,9};
  int i,j=1,k=1;
  clrscr();
  for(i=0;i<9;i++)
  {
    delay(1000);
    if(i>=0&&i<3)
      printf("%d\n",a[i]);
    else if(i>=3&&i<6)
      {
       gotoxy(2,j++);
       printf("%d\n",a[i]);
      }
    else
     {
      gotoxy(3,k++);
      printf("%d\n",a[i]);
     }
  }
  getch();
  return 0;
}
----------------解决方案--------------------------------------------------------
clrscr();  是什么总思?
可不可以不要.
----------------解决方案--------------------------------------------------------
我在DEV-C++
我在dev-c++里面运行不了啊
我想问大家 void main(),还是 int  main(void)??我晕了
----------------解决方案--------------------------------------------------------
  相关解决方案