文章
17
粉丝
0
获赞
119
访问
4.6k
#include<bits/stdc++.h>
using namespace std;
int main(){
char s[100];
//scanf("%s", &s);
while(cin>>s){
int n;
int ans=0;
for(int i = 0; i<strlen(s);i++){
if(s[i]>='A'&&s[i]<='F') n = (s[i]-'A')+10;
if(s[i]>='0'&&s[i]<='9')n = (s[i]-'0');
ans = ans*16 + n;
}
cout<<ans<<endl;
}
return 0;
}
注意:
1、输入的是char数组
2、持续输入 需要使用while(cin>>..)
3、持续出答案需要换行
4、求字符串长度:strlen(s)
登录后发布评论
#include<bits/stdc++.h>
using namespace std;
int main(){
char a[100];
while(scanf("%s",a)!=EOF){
int len=strlen(a);
int c,sum;
if(a[len-1]>='A' && a[len-1]<='F')
sum=a[len-1]-'A'+10;
else sum=a[len-1]-'0';
for(int i=len-2;i>=2;i--)
{
if(a[i]>='A' && a[i]<='F')
c=a[i]-'A'+10;
else c=a[i]-'0';
sum=sum+c*16;
}
printf("%d\n",sum);
sum=0;
}
return 0;
}
大佬这样为啥只有百分之25的正确率