0

在 C 中我不能简单地使用 putchar(5);

我必须这样做

#include <stdio.h>



    int main(){
        int c=5;




     putchar(c+'0');


    putchar('\n');


    return 0;

    }

输出为 5。

但是对于 10 或 25 这样的两位数,我不能这样做。我的问题是,是否可以仅使用 putchar 和 putchar 打印出 10?

我不能这样

 int c=10;
 putchar(c+'0');

输出将是 ':' 因为 ':' 的 ASCII 值为 58。

4

1 回答 1

0

如果只是数字,您可以尝试以下逻辑。

#include <stdio.h>
int main()
{
    int c = 465, n = 0, i = 1;

    while(c > 0){
        n *= (10 * i);
        n += (c % 10);
        c /= 10;
    }

    do {
        putchar((n % 10)+'0');
        n /= 10;
    } while(n > 0);

    putchar('\n');
    return 0;
}
于 2018-05-07T18:03:55.170 回答