【发布时间】:2025-12-07 06:10:01
【问题描述】:
我正在实施公平竞争算法,但我注意到 cout 语句不起作用
下面是我的代码。请注意,所有必需的头文件都包括在内,并且没有编译错误(据我所知)。程序运行没有错误,我得到终止命令(再次,没有错误)。
但同时没有输出。甚至 cout 测试 2 也不会反映在输出中。
注意:如果我在每个 cout 语句的末尾使用 endl,我会得到输出,但这里不方便,因为我想打印矩阵。另外必须有一个简单的方法,而不是每次都写 enld
int main()
{
int i,j,k,x,y,z;
bool status[24]={false};
char map[5][5]={0};
string key;
cout<<"Enter the key"<<endl;
cout<<"Test 1";
getline(cin,key);
cout<<"Test 2";
x=key.length();
for(i=0;i<x;i++)
key[i]=toupper(key[i]);
for(i=0;i<x;i++)
{
y=key[i]-65;
if(status[y]==0)
status[y]=1;
}
cout<<"Adding the main key string";
i=j=k=z=0;
while(k<x)
{
if(j==5)
{
i++;
j=0;
}
map[i][j++]=key[k++];
}
cout<<"Adding the remaining alphabets";
while(k++<25)
{
if(j==5)
{
i++;
j=0;
}
while(status[z++]==false)
map[i][j++]=z+64;
}
cout<<"Output matrix";
for(i=0;i<5;i++)
for(j=0;j<5;j++)
{
cout<<map[i][j];
}
return 0;
}
【问题讨论】:
-
请列出您的包含文件也有问题
-
我说没有错误,所有的头文件都包含了
-
@πάνταῥεῖ 感谢您的指导,我只是一个新手,但如果“好”人不那么傲慢并表现出帮助他们的下等人的本性,世界会不会变得更美好。如果你能回答我的问题,我会很高兴,而不是欺负/专横。 “如果你没有把知识传授给别人,你就徒劳地获得了知识。”
-
看起来您只需要在输出行之后使用
cout.flush();即可查看写入后立即出现的值。cout在大多数实现中使用缓冲输出。 -
@SagarPatel “顺便说一句,我的问题不值得吗??”好吧,您至少应该付出一些努力来制作MCVE,而不是仅仅提供一个纯代码转储。第一个反对票可能是关于那个大喊大叫的文字。这在这里不太受欢迎。