男休闲裤配什么上衣:谁能帮我看看这个简单的程序,运行一下就停了

来源:百度文库 编辑:查人人中国名人网 时间:2024/04/25 06:46:23
#include<stdio.h>
void main()
{
char chMove, chBreak ;
printf("Please entered your char:\t"); //键入要移动的字符
chMove=getchar();

while(1)
{
printf("%c\t",chMove); //先打印出字符,再删除字符并且移动到下一个位置,如此循环
printf("\b\t\t"); // 产生移动效果

chBreak=getchar(); //接受任意键
if(chBreak < 256) //保证按任意键都能识别,使用的是ASCII码值
break; //或者 exit();
}
}

#include<stdio.h>
#include<conio.h>
void main()
{
char chMove, chBreak ;
printf("Please entered your char:\t"); //键入要移动的字符
chMove=getchar();

while(1)
{
printf("%c",chMove); //先打印出字符,再删除字符并且移动到下一个位置,如此循环
printf("\b %c\b",chMove);
getch(); // 产生移动效果

//chBreak=getchar(); //接受任意键
//if(chBreak < 256) //保证按任意键都能识别,使用的是ASCII码值
//break; //或者 exit();
}
}

我加了一句,改了一下,你看要得不,只是换行时退不了格,所以有一点点小问题

chBreak=getchar(); //接受任意键
if(chBreak < 256) //保证按任意键都能识别,使用的是ASCII码值
break; //或者 exit();

这三句让你按任意键后立刻退出循环(退出程序)

既然要看效果 何必写
这段呢
chBreak=getchar(); //接受任意键
if(chBreak < 256) //保证按任意键都能识别,使用的是ASCII码值
break; //或者 exit();
会退出是因为
第一次你输入了 一个字符 还有一个回车
chBreak=getchar();接受了你第一次 按下的回车的值

如果你非要 的话
就接受两次值

getchar();函数,只有当你按下回车键才从缓冲区读入字符,并且会将回车键也读入。
你在键入一个字符(比如 e)后在按回车,ch=getchar(),ch读入 e,然后马上进入第二次循环,,ch=getchar(),ch读入回车;,所以退出程序。你可以在ch=getchar();之后加上ch1=getchar();这样就把 回车给读走了,因为ch1读入了回车。

停了 什么意思 是直接退出了
如果是可能是因为接收了上面的\t
这是应该写个fflush(stdin)清空缓冲区

还有getchar()函数直到输入回车才可以被程序接收到的
所以你第一个变量必须输入回车才可以进入循环
而第二个变量也必须输入回车才跳出循环
如果想退出程序的话最好写return;而不要写break 或者exit