日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

UVa 389 Basically Speaking

發布時間:2025/7/14 编程问答 46 豆豆
生活随笔 收集整理的這篇文章主要介紹了 UVa 389 Basically Speaking 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

又一道基礎題,進制轉換。

做水題也不能大意!

1 //68ms 2010-05-14 15:48:58
2 ?//log: wa(1) ac(1)
3 //Type: Base number conversion(進制轉換)
4 //key1: strrev() 在ANSI C, C++ 中不能使用
5 //key2: 0的時候要處理
6 //Thinking: After finished coding, member to try some special data.
7 #include <stdio.h>
8 #include <string.h>
9 #define NL 100
10
11 int get(char a)
12 {
13 if (a >= '0' && a <= '9') return a-'0';
14 return a-'A'+10;
15 }
16
17 int main()
18 {
19 char s0[NL], s1[NL];
20 int len, I, K, M, b1, b2;
21 while (scanf("%s%d%d", s0, &b1, &b2) != EOF) {
22 len = strlen(s0);
23 int t = 0, bb = 1;
24 I = len - 1;
25 while (I>=0) {
26 t += get(s0[I])*bb;
27 bb *= b1;
28 I--;
29 }
30 K = 0;
31 while (t>0) {
32 I = t%b2;
33 if (I>=10) s1[K++] = I-10+'A';
34 else s1[K++] = I+'0';
35 t /= b2;
36 }
37 if (K == 0) { s1[K++] = '0'; }
38 s1[K] = '\0';
39 if (K > 7) puts(" ERROR");
40 else {
41 for (I=0, M=K-1; M>=0; M--) {
42 s0[I++] = s1[M];
43 }
44 s0[I] = '\0';
45 printf("%7s\n", s0);
46 }
47 }
48 return 0;
49 }
50 /*
51 input:
52 0000000 2 2
53 */

?

轉載于:https://www.cnblogs.com/superbin/archive/2010/05/14/1735546.html

總結

以上是生活随笔為你收集整理的UVa 389 Basically Speaking的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。