借此复习一下printf格式码:
%d —— 以十进制形式打印一个整型值
%o —— 八进制
%x —— 十六进制
参考代码如下:
#include <stdio.h> #include <stdlib.h> #include <string.h> int main() { int num; scanf("%d", &num); printf("%o", num); return 0; }
还有另一种求法,用来学习~
#include <stdio.h> int main() { int num; scanf("%d", &num); int rest = num % 8; //rest用来保留最后一位 while (num / 8 != 0) { num = num / 8; putchar(num + '0'); //以ascii码的形式打印 } putchar(rest + '0'); return 0; }
0.0分
107 人评分
求问这个为什么不对 #include <stdio.h> #include <stdlib.h> int main() { int j,m,k; int a; scanf("%d",&m); k=m/8; j=m%8; a=10*k+j; printf("%d",a); return 0; }
第一种方法#include <stdlib.h> #include <string.h>不带上为啥不对呀
渐入佳境. 2021-03-19 19:24:51 |
我这两个头文件都没有,通过了
uq_51480647670 2021-10-27 23:44:06 |
我都没带这两个头文件,通过了
第三种 #include<stdio.h> void Octal(int x){ if(x>0){ Octal(x/8); printf("%d",x%8); } } int main(void) { int x=0; scanf("%d",&x); Octal(x); return 0; }
阳春 2021-03-15 18:12:50 |
太厉害了
#include <stdio.h> #include <math.h> int main(void) { int i = 0, num = 0, div = 0, rem = 0, onum = 0; scanf("%d", &num); while (1) { div = num/8; rem = num%8; onum += pow(10,i++)*rem; if (0 == div)break; num = div; } printf("%d", onum); return 0; } 这样可以代替第二种方法
请问第一种方法#include <stdlib.h> #include <string.h>这两个头文件可以不带上吗
C语言程序设计教程(第三版)课后习题3.7 (C语言代码)浏览:448 |
C语言程序设计教程(第三版)课后习题10.4 (C语言代码)浏览:879 |
C语言程序设计教程(第三版)课后习题5.6 (C语言代码)浏览:504 |
循环入门练习5 (C语言代码)浏览:828 |
C二级辅导-分段函数 (C语言代码)浏览:593 |
C二级辅导-统计字符 (C语言代码)浏览:476 |
永远的丰碑 (C语言代码)浏览:516 |
淘淘的名单 (C语言代码)浏览:1221 |
判定字符位置 (C语言代码)浏览:784 |
C语言程序设计教程(第三版)课后习题11.5 (C语言代码)浏览:984 |
阳春 2021-03-12 20:35:54 |
好吧我知道错了
夜羊s 2022-03-19 23:17:18 |
用暴力肯定没这么短