gpt4 book ai didi

c - C中的多位数字反转

转载 作者:行者123 更新时间:2023-11-30 18:40:03 27 4
gpt4 key购买 nike

我有问题,我需要最多 10000 个测试用例作为输入,并且最多有 5000 个数字,并且必须反转数字。

如果假设我只给出 3 个测试用例和每个测试用例的随机数字,如下所示,

n = 3,

1] 12 43 => these are the digits => o/P 55
2] 90 235 => o/P is 09 + 532 = 541
3] 23 98899 3454 2323 => o/P is 32 + 99889 + 4543 + 3232 = 107696

我需要将这些数字作为输入。我可以将它们放入整数数组中吗?存储数字后,我必须反转数字并添加它们。1] 12 43 可以反转为 21 34 并相加为 21 + 34 = 55。输出为 55

我们可以使用以下公式反转一位数字,

num = 12345
rev_num = 0
while(num > 0) {
rev_num = (rev_num * 10) + (num%10)
num = num/10
}

但不知道存储它的正确数据结构,以便反转单行上输入的多个数字并添加反转的数据。整数 n;int (*p)[n];我们不能根据 n 的值动态声明数组吗?如何解决这个问题。

最佳答案

  1. 使用 fgets() 读取输入。
  2. 使用 strtok() 将输入分隔为字符串,并以空格作为分隔符。
  3. 对每个标记使用 strrev() 反转字符串。
  4. 然后使用 atoi() 将标记转换为整数。
  5. 获得整数后,执行加法。

关于c - C中的多位数字反转,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27309905/

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