所以基本上我创建了这个日历,当它输出时你可以简单地看到它是正确但它只是关闭,有人可以帮我保持打开以显示输出吗? 我知道我应该知道这是什么,但这需要我很长时间才能做到,而我的思想并不是在正确的地方。感谢
#include "stdafx.h"
#include <conio.h>
#include <iostream>
#include <iomanip>
#include "float.h"
#include <stack>
using namespace std;
using std::stack;
int calendar[6][7];
void cal(int y, int z) // y is number of days and z is the number corresponding
{ // to the first day
int n = 1;
for (int j = z - 1; j<7; j++)
{
calendar[0][j] = n;
n++;
}
for (int i = 1; i<6 && n <= y; i++)
{
for (int k = 0; k<7 && n <= y; k++)
{
calendar[i][k] = n;
n++;
}
}
}
int main()
{
int d;
int day;
cout << "Enter number of days : ";
cin >> d;
cout << "Enter first day of the month(1 for monday 7 for sunday..) : ";
cin >> day; cout << "\n";
cal(d, day);
cout << "M T W T F S S" << endl;
cout << "\n";
for (int i = 0; i<6; i++)
{
for (int j = 0; j<7; j++)
{
cout << calendar[i][j] << "\t";
}
cout << "" << endl;
}
}
答案 0 :(得分:1)
使用std::cin.get()
保持窗口打开。
答案 1 :(得分:0)
最简单的方法可能是在主要结束之前要求输入一些:
std::cin.ignore(std::numeric_limits<std::streamsize>::max());
std::cin.ignore();
这将等待输入键被命中:由于只完成了一些数字输入,所以输入缓冲区中至少仍然存在换行符。第一行删除任何已输入的行。然后第二行等待回车键。
答案 2 :(得分:0)
我通常只使用getchar()
等待用户输入,这比std::cin.get()
短。
答案 3 :(得分:0)
由于没有人提到它 - 您也可以在Windows系统系列上执行system("pause")
。它以最“优雅”的方式满足您的需求。