zoukankan      html  css  js  c++  java
  • 蓝桥杯训练 算法提高 P0102 (模拟,格式化输出)

     用户输入三个字符,每个字符取值范围是0-9,A-F。然后程序会把这三个字符转化为相应的十六进制整数,并分别以十六进制,十进制,八进制输出,十六进制表示成3位,八进制表示成4位,若不够前面补0。(不考虑输入不合法的情况)
    输入
      1D5
    输出
    (注意冒号后面有一个空格)
      Hex: 0x1D5
      Decimal: 469
      Octal: 0725

    不能用多组输入输出,不然只能过一组数据。 

    #include<iostream>
    #include<cstdio>
    #include<cmath>
    #include<cstring>
    using namespace std;
    
    int main()
    {
    	int n,m,j,k,i,T;
    	char s[4];
    	int num[4];	
    	gets(s);
    		for (i=0;i<strlen(s);i++)
    		{
    			if (s[i]>='A'&&s[i]<='F')
    			num[i] = 10+s[i]-'A';
    			else
    			num[i] = s[i]-'0';
    		}
    		int ans = num[0]*16*16+num[1]*16+num[2];
    		printf("Hex: 0x%s
    ",s);
    		printf("Decimal: %d
    ",ans);
    		printf("Octal: %.4o
    ",ans);
    	
    	return 0;
    }
  • 相关阅读:
    psp4
    一维循环数组最大子数组求解
    psp3
    psp2
    求二维数组最大连续子数组
    计算连续最大子数组问题
    psp1
    关于30道题目问题
    Java 文件操作
    java iterator
  • 原文地址:https://www.cnblogs.com/Romantic-Chopin/p/12451134.html
Copyright © 2011-2022 走看看