簡體   English   中英

如何將數字變成兩位數

[英]How to double digits in number

我在如何將任何數字的兩位數加倍時遇到問題。

例如,數字:12345 使用函數和循環輸出將是 1122334455。

#include <stdio.h>
int main() {
int num;
printf("Please Enter a number");
scanf("%d",&num);
for(int i=0;i<=num%10;i++) {
       if(i==num%10)
             newNum+=i;
for(int i=1;i<=num%10;i++) {
       if(i==num/10%10)
             newNum+=i;

我假設您不必存儲具有重復數字的值,因為將其存儲為 int 會很快溢出。 如果必須,您可以使用 long long 或數組。

你的 for 循環沒有意義。 你必須循環直到所有的整數都被復制。 為此,請使用 mod 10 確定個位,然后將 number 除以 10。它將循環直到 number 為 0。試試這個。

#include <stdio.h>

int main(void) {

    int number;
    int temp;

    printf("Enter an integer: ");
    scanf("%d", &number);

    while(number) {
        temp = number % 10;
        printf("%d%d", temp, temp);
        number /= 10;
    }
    return 0;
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM