如何正确编码此函数,以便它计算 int 的每个数字的总和
How to correctly code this function such that it calculates the sum of each digit of the int?
我编写了一个将 5 位邮政编码转换为条形码的函数。但是,我还需要计算每个数字的总和才能继续最后一步。我试图这样做,但Visual Studio说变量总和未初始化。我能看出我做错了什么,但我不知道为什么。有人可以解释原因并提供一些建议来纠正我的代码吗?感谢您的回复。
void bar_code(int zip)
{
int sum;
for (int number = 0; number <= 4; number ++)
{
int d = zip / pow( 10 , 4 - number);
if (d == 0) { cout << "||:::"; };
if (d == 1) { cout << ":::||"; };
if (d == 2) { cout << "::|:|"; };
if (d == 3) { cout << "::||:"; };
if (d == 4) { cout << ":|::|"; };
if (d == 5) { cout << ":|:|:"; };
if (d == 6) { cout << ":||::"; };
if (d == 7) { cout << "|:::|"; };
if (d == 8) { cout << "|::|:"; };
if (d == 9) { cout << "|:|::"; };
sum += d;
int update = pow(10, 4 - number);
zip = zip % update;
}
if (sum == 0) { cout << "||:::"; };
if (sum == 1) { cout << ":::||"; };
if (sum == 2) { cout << "::|:|"; };
if (sum == 3) { cout << "::||:"; };
if (sum == 4) { cout << ":|::|"; };
if (sum == 5) { cout << ":|:|:"; };
if (sum == 6) { cout << ":||::"; };
if (sum == 7) { cout << "|:::|"; };
if (sum == 8) { cout << "|::|:"; };
if (sum == 9) { cout << "|:|::"; };
}
您从未初始化过sum
。Value 在尝试向其添加d
之前,使用 int sum{}
或 int sum = x
对其进行初始化。
相关文章:
- 为什么将双精度转换为 int 似乎在第 16 位数字之后将其四舍五入?
- 整数区间(或 int 数组)中每个数字的出现次数
- 必须首先打印向量 v1 中最接近整数 x 的数字<int>
- 无符号的 int 到有效数字
- 返回 int 中可被 2 c++ 整除的所有数字的总和
- C++ - 将 int 读取为字母和数字序列
- 如何安全地将有符号字段从uint32_t提取到有符号数字(int或uint32_t)中
- 如果char可以在C++中存储数字,为什么我们需要int
- 检查字符串是否是数字,然后将该数字转换为 int?
- C++在减去 int 时向 int 添加一个额外的数字
- 如何使用 c++ 中的 int* count(const string&s)计算字符串中每个数字的出现次数?
- 当我将 const int 声明/初始化为 5 时,它被初始化为一个大数字
- 如何将int分解为数字并以相同的顺序为向量分配数字
- 从C 到C#调用INT []显示随机大数字,而不是原始数组成员
- 如何将 int 的数字分配给数组 c++
- 如何正确编码此函数,以便它计算 int 的每个数字的总和
- C++ 从文件中读取 int,每个数字用逗号分隔
- 如何将INT数字[1]的值与数字[2] C 进行比较
- int数字中的十六进制*字符
- C++格式化int数字,用一个点分隔数千