Posted on 2009-08-29 04:26
Uriel 閱讀(330)
評論(0) 編輯 收藏 引用 所屬分類:
POJ
開始看到一以為寫起來會很麻煩,沒想到堆了幾個庫函數就解決了
不過,這反映出自己對C語言庫函數是非常的不熟悉。。。
算是水題。。但是還是學到一些東西。。寫下來以免忘了
1.strtol
long int strtol(const char *nptr, char **endptr, int base)
/* 從一個以base為進制的字符串轉為一個長整型數 */
2.itoa
char *itoa(int value, char *string, int base)
/* 從一個int型數轉為base進制的數后存進string里 */
該題代碼如下:(用GCC交。。用C,C++均CE。。(itoa。。))

/**//*Problem: 1546 User: Uriel
Memory: 544K Time: 0MS
Language: GCC Result: Accepted */

#include<stdio.h>
#include<ctype.h>
#include<stdlib.h>
#include<string.h>

char *res,str[100],rsc[100];
int a,b,num,i;

int main()


{
while(scanf("%s %d %d",rsc,&a,&b)!=EOF)

{
memset(str,0x00,sizeof(str));
itoa(strtol(rsc,&res,a),str,b);
if(strlen(str)<=7)

{
for(i=0;i<strlen(str);i++)

{
if(str[i]>='a' && str[i]<='z')str[i]-=32;
}
printf("%7s\n",str);
}
else
printf("%7s\n","ERROR");
getchar();
}
return 0;
}

