为什么我会陷入困境?[C ]
Why am I stuck in a while loop?[c++]
我在这里陷入困境。我有一个填充零的矩阵,我想在图中添加k边缘。我在Visual Studio中没有显示错误。当它到达这条代码时:
int z = 0;
while (z!=k);
{
int a = std::rand() % n;
int b = std::rand() % n;
if ((v[a][b] != 1) && (a != b))
{
v[a][b] = 1;
v[b][a] = 1;
z++;
}
}
程序陷入无限循环;
这是完整的代码:
std::vector<std::vector<int>> random_gnk(int n, int k)
{
srand(time(NULL));
int temp = 0;
for (int i = 0; i < n; i++)
{
temp = temp + i;
}
std::vector<std::vector<int>> v;
if (k > temp || k<0)
{
std::cout << "Blad. Podano zla liczbe krawedzi." << std::endl;
return v;
}
for (int i = 0; i < n; i++)
{
std::vector<int>row;
for (int j = 0; j < n; j++)
{
row.push_back(0);
}
v.push_back(row);
}
int z = 0;
while (z!=k);
{
int a = std::rand() % n;
int b = std::rand() % n;
if ((v[a][b] != 1) && (a != b))
{
v[a][b] = 1;
v[b][a] = 1;
z++;
}
}
return v;
}
void GNK()
{
int n, k;
std::cout << "Podaj wielkosc n grafu: " << std::endl;
std::cin >> n;
std::cout << "Podaj liczbe k krawedzi grafu: " << std::endl;
std::cin >> k;
print_matrix(random_gnk(n, k));
return;
}
通过clang-format
放置您的代码:
int z = 0;
while (z != k)
;
{
这应该很清楚:删除分号!
这里有一个在线格式化器。如果您喜欢,请使用IDE或代码编辑器进行设置。它将解决这样的问题并使您的代码更加美丽。
相关文章:
- 为什么"do while"循环不断退出,即使条件计算结果为 false?
- 为什么在全局范围内使用"extern int a"似乎不行?
- 为什么在popback()操作之后,它仍然打印完整的矢量
- 为什么随机数生成器不在void函数中随机化数字,而在main函数中随机化
- 为什么两个不同的未命名名称空间可以共存于一个cpp文件中
- 为什么会发生堆损坏
- 为什么使用 "this" 指针调用派生成员函数?
- C++我的数学有什么问题,为什么我的代码不能正确循环
- 为什么 boost interprocess_condition notify_one陷入僵局?
- 打电话给功能后,为什么我会陷入无限循环中
- 双重选择对数组进行排序 - 诚实地陷入困境
- 为什么这段代码陷入无限循环?
- 为什么我会陷入困境?[C ]
- C++tron AI陷入了自己的困境
- 为什么我陷入了循环
- 创建一个体素系统并陷入困境,发现自己需要关于如何实现它的信息
- 将文件读取到char数组中,然后计算strlen会在C++中陷入困境
- 否则会陷入循环困境
- 将这个实例变量添加到C++11文件的头中会使编译器陷入困境.为什么?
- 如何编写好的软件而不陷入困境