C++交替循环输出字母和文字,按键即停止
#include <iostream>
#include<ctime>
#include<cstdlib>
#include<conio.h>
using namespace std;
class Screen
{
private:
int n;
public:
Screen()
{
n=5;
}
void move1()//注意只是循环输出各个数字,不能对循环输出再进行循环(如果对循环输出0123456789再进行循环,则move1就变成一个无限循环的函数,则下面的screen循环就进行不下去了)
{
for(int i=0;i<10;++i)
{
cout<<i;
}
}
void move2()
{
char i;
for(i='a';i<='z';++i)
{
cout<<i;
}
}
void screen()
{
int t;
while(!kbhit())
{
t=time(0)%(2*n);//如果是放在循环外面的话,time(0)的值就一直不变,放在循环里面,一秒钟进行一次判断,一秒钟进行一次循环
if(t<n)
move1();
else
move2();
}
}
};
int main()
{
Screen s;
s.screen();
return 0;
}
控制时间的方式
法一:
int t;
while(!kbhit())
{
t=time(0)%(2*n);//如果是放在循环外面的话,time(0)的值就一直不变,放在循环里面,一秒钟进行一次判断,一秒钟进行一次循环
if(t<n)
move1();
else
move2();
}
法二:
int t1,t2;
t1=time(0);
while(!kbhit())
{
t2=time(0);
if((t2-t1)<n)
move1();
else
move2();
}
输出字母的方法
法一:
void move2()
{
char i;
for(i='a';i<='z';++i)
{
cout<<i;
}
}