DropsBrowse Pastes
Login with GitHub

进制转换 C

November 30th, 2021Views: 20(0 unique)C
#include <stdio.h>
int main(void) /*因为这个编辑器不能正常显示汉字所以我只能用五笔代码*/
{
        long long x;
        int y, z;
        while (1)
        {
                printf("Yge lwty idr fjtm t h-sf fjrm, k uj et ufqe gkup kgn bgk ga.\n"); /*请输入源进制和目标进制,中间用半角逗号隔开。*/
                scanf_s("%d,%d", &y, &z);
                if (!((y == 8 || y == 10 || y == 16) && (z == 8 || z == 10 || z == 16)))
                {
                        printf("ERROR\n"); /*这个进制转换器只支持8,10,16进制的相互转换*/
                }
                else
                {
                        switch (y)
                        {
                            case 8:
                                printf("Yge lwty w^ fjrm ovt\n"); /*请输入八进制数*/ /*注意此时不要输入8和9否则会出现奇怪的错误*/
                                scanf_s("%llo", &x);
                                break;
                            case 10:
                                printf("Yge lwty fgh fjrm ovt\n"); /*请输入十进制数*/
                                scanf_s("%lld", &x);
                                break;
                            case 16:
                                printf("Yge lwty fgh uy fjrm ovt\n"); /*请输入十六进制数*/
                                scanf_s("%llX", &x);
                                break;
                        }
                }
                switch (z)
                {
                    case 8:
                        printf("P wh ovt r w^ fjrm j %llo.\n", x); /*这个数的八进制是*/
                        break;
                    case 10:
                        printf("P wh ovt r fgh fjrm j %lld.\n", x); /*这个数的十进制是*/
                        break;
                    case 16:
                        printf("P wh ovt r fgh uy fjrm j %llx, bn skn c pgn dn %llX.\n", x, x); /*这个数的十六进制是*/
                        break;
                }
        }
        return 0;
}
        }
            }
        }
        }
    }
}