gpt4 book ai didi

c - 如何在 C 中将整数拆分为单独的多位整数?

转载 作者:行者123 更新时间:2023-12-04 02:17:51 32 4
gpt4 key购买 nike

我正在尝试自学 C。我试图将一个整数拆分为多个单独的整数,例如12345 变成 12、34 和 5,但我找不到办法做到这一点。

我已经了解一些 Java 和编程基础知识。我是否需要使用某种 do-while 或 for 循环来执行此操作,或者我可以使用整数数组吗?

最佳答案

这动态地完成了您正在寻找的东西!您可以设置任何类型的拆分。 2-2-4 或 3-4-5 或任何阵型。 (你基本上可以从用户那里得到一个数字字符串并完成这个任务,如果你以后愿意的话,把临时字符串变成一个整数):

#include <stdio.h>
#include <string.h>

int main() {
int i; //Counter

char getStr[100];
int NumberToSplit1, NumberToSplit2, NumberToSplit3;

printf("Enter a number: ");
scanf("%s", getStr); //get it as a string
//or you can use scanf("%[^\n], getStr);

printf("How many number splits you want: ");
scanf("%d %d %d", &NumberToSplit1, &NumberToSplit2, &NumberToSplit3);

printf("\n%d-%d-%d split: \n", NumberToSplit1, NumberToSplit2, NumberToSplit3);

for (i = 0; i < NumberToSplit1; i++) {
printf("%c", getStr[i]);
}
printf("\n");
for (i = NumberToSplit1; i < (NumberToSplit1+NumberToSplit2); i++) {
printf("%c", getStr[i]);
}
printf("\n");
for (i = (NumberToSplit1+NumberToSplit2); i < (NumberToSplit1+NumberToSplit2+NumberToSplit3); i++) {
printf("%c", getStr[i]);
}

//If you want to save it in an integer, you can use strcat function to save the temp 2 numbers in a string convert that to integer

//or use http://stackoverflow.com/questions/7021725/converting-string-to-integer-c

printf("\n");
printf("\n");

}

输出:

Enter a number: 12345
How many number splits you want: 2 2 4

2-2-4 split:
12
34
5

Program ended with exit code: 0

关于c - 如何在 C 中将整数拆分为单独的多位整数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32937864/

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