小猪猪 发表于 2006-7-7 12:22

clrscr()函数怎么定义阿?

我用Dev-C++写程序有用到clrscr()这个函数!但是会出现 undefined reference to `clrscr' 错误!要早那么才能定义阿

小猪猪 发表于 2006-7-7 12:28

江湖救急阿!请大家帮帮忙

天命 发表于 2006-7-7 12:49

换成系统调用清屏可以吗?
system("cls");

再见型过笼 发表于 2006-7-7 12:49

包含conio.h文件就可以了

小猪猪 发表于 2006-7-7 13:13

我试过了!有个很奇怪的情况!换成system("cls"); 之后还是有之前的情况!但是按多几次!假如第二次选其他功能本来是会输入错误的!但是几次之后那功能又实现了

小猪猪 发表于 2006-7-7 13:15

我的部分程序如下
main()

{char c1,c2,c3,c4;
while(1)

{
printf("\n\n   Welcome!!\n\n");
printf("        a. 皇后问题\n");
printf("        b. 插入排序\n");
printf("        c. 泡沫排序\n");
printf("        d. 哈希排序\n");
printf("      e. 退出\n");
loop:printf("\n请输入指令:");
scanf("%c",&c1);
scanf("%c",&c2);
switch(c1)
{case 'a':huanghou();break;
case 'b':insertsort();break;         
case 'c':maopao();break;
case 'd':Hash();break;
case 'e':goto loop2;
default :printf("\n\n 输入错误.\n\n请选择 a, b, c ,d or e\n");goto loop;
}
loop1:printf("\n        Menu or Quit ?(mm/qq)\n");
scanf("%c",&c3);
scanf("%c",&c2);
if(c3=='q'||c3=='Q') goto loop2;
else if(c3=='m'||c3=='M') {system("cls");continue;}
else printf("\n\n Bad input!!\n");goto loop1;
}
loop2:printf("\n\nGood bye!!\n\n");
scanf("%c",&c2);
system("cls");
}
出现楼上的情况!奇怪!多按几次就实现了!

天命 发表于 2006-7-7 19:43

我用C++改了一下,不知道合不合楼主用.

主要改了scanf里的%c->%s
把无效的双break退出提出了switch
还有把传说中的禁招goto换成了while





#include "stdio.h"
#include "conio.h"
#include <iostream.h>
#include <stdlib.h>

void main()
{

        char c1,c2;

while(1)
{

while(1)
{
printf("\n\n   Welcome!!\n\n");
printf("      a. 皇后问题\n");
printf("      b. 插入排序\n");
printf("      c. 泡沫排序\n");
printf("      d. 哈希排序\n");
printf("      e. 退出\n");
printf("\n请输入指令:");
scanf("%s",&c1);

if(c1=='e')break;
switch(c1)
{
case 'a':printf("      a. 皇后问题\n");break;
case 'b':printf("      b. 插入排序\n");break;         
case 'c':printf("      c. 泡沫排序\n");break;
case 'd':printf("      d. 哈希排序\n");break;
default :printf("\n\n 输入错误.\n\n请选择 a, b, c ,d or e\n");scanf("%c",&c2);
}
getche();
system("cls");

}

while(1)
        {
        system("cls");
        printf("\n      Menu or Quit ?(mM/qQ)\n");
        scanf("%s",&c1);
        if(c1=='q'||c1=='Q'){break;}
        else if(c1=='m'||c1=='M') {system("cls");break;}
        else printf("\n\n Bad input!!\n");
        }
        if(c1=='q'||c1=='Q'){break;};

}

system("cls");
printf("\n\nGood bye!!\n\n");
getche();


}

[ 本帖最后由 天命 于 2006-7-7 19:44 编辑 ]

heidonglgc 发表于 2006-7-11 18:02

clrscr()是在CONIO.H这个头中的,但只是在TRUBOC中可用,在DEV C++中用SYSTEM("CLS")代替
楼主应注意一下编程的风格!!
页: [1]
查看完整版本: clrscr()函数怎么定义阿?