gpt4 book ai didi

c - 为什么我用这个程序得到大量的输出?

转载 作者:行者123 更新时间:2023-11-30 17:58:10 25 4
gpt4 key购买 nike

我正在尝试制作一个程序,允许用户输入一个正整数,该程序将输出每个数字相加的总和。例如,如果用户输入54,程序将输出9。由于某种原因,该程序输出的数字异常巨大。当输入为 54 时,输出将显示类似 51654512191235 的内容。我是 C 编程新手,但我没有发现这段代码有任何问题。

//This program takes a positive integer
//from the user, and adds all the digits
//of the number together.

#include <stdio.h>

int main() {
system("clear");
int given, add, hold, i;

printf("Enter a positive integer (up to 10 digits): ");
scanf("%d", &given); //User input

for (i = 0; i < 10; i++) { //Loop to add digits
hold = (given % 10);
given = (given / 10);
add = (add + hold);
}
printf("Sum of the digits is %d\n", add); //Output
}

最佳答案

int given, add, hold, i;

您尚未初始化add,因此它包含未指定的数据,也称为垃圾。在未指定的情况下使用其值是未定义的行为。

关于c - 为什么我用这个程序得到大量的输出?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12413202/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com