每日编程中遇到任何疑问、意见、建议请公众号留言或加入每日编程群聊739635399
进制转换。
输入格式:
手工输入数字和将要转化成的进制数
输出格式:
输出进制转换结果
输入样例:
128
输出样例:
14
解决方法:
(1)算法的基本思想:
利用递归的方法进行除k取余
(2)代码实现:
#include<stdio.h>voidfun(int n, int k){if (k > 36) {printf("进制太大,无法转换"); }if (n == 0)return; fun(n / k, k);int t = n % k;int i = 0;char s;if (t >= 10) {for (i = 10; i <= t; ++i) { s = 'A' + i - 10; }printf("%c", s); }else {printf("%d", t); }}intmain(){int n;printf("请输入待转化数字:\n");scanf("%d", &n);printf("\n想要转化成几进制,请输入:\n");int k;scanf("%d", &k);if (k > 36) {printf("\n\n进制太大,无法转换!!!");return0; }printf("\n转化结果:\n"); fun(n, k);return0;}
输入格式:
手动输入字符串
输出格式:
输出最长回文子序列长度
输入样例:
abcbab
输出样例:
5
