本专栏分享Java解法(主),c/c++,python解法一同记录。
目录
21. MT1021 %f格式符
(1)题目描述
(2)参考代码
Java
c++
python
22. MT1022 小数、指数
(1)题目描述
(2)参考代码
c++
25. MT1025 八、十六进制
(1)题目描述
(2)参考代码
Java
C++
26. MT1026 合并
(1)题目描述
(2)参考代码
Java
c++
27. MT1027 整数逆序
(1)题目描述
(2)参考代码
Java
c++
输入一个实数,第一次按实型输出;第二次保留2位小数输出;第三次保留3位小数但最小列宽8列输出,空格分隔。
格式
输入格式: 输入实型
输出格式: 输出实型,空格分隔。
样例1
输入格式: 31331.14345435
.
输出格式: 31331.143454 31331.14 31331.143
import java.util.Scanner;
import java.util.*;
class Main {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
// code here
double a = input.nextDouble();
System.out.printf("%.6f",a);
System.out.printf(" %.2f",a);
System.out.printf(" %8.3f",a);
input.close();
}
}
#include
using namespace std;
int main( )
{
double a;
cin >> a;
cout << fixed << setprecision(6) << a << " " << fixed <<
setprecision(2) << a << " " << fixed << setprecision(3) << setw(8) << a << endl;
return 0;
}
def main():
#code here
a = float(input())
print('{:.6f} {:.2f} {:8.3f}'.format(a,a,a))
if __name__ == '__main__':
main();
输出3.1415926、12345678.123456789的小数、指数形式。
格式
输入格式: 无
输出格式: 输出为实型,空格分隔。
样例1
输入格式: 无
输出格式:
3.141593 3.141593e+000
12345678.123457 1.234568e+007
#include
using namespace std;
int main( )
{
double a = 3.1415926, b = 12345678.123456789;
printf("%lf ",a);
int i;
for(i=-1;a>1;i++) a/=10;
printf("%lfe+%03d\n",a*10,i);
printf("%lf ",b);
for(i=-1;b>1;i++) b /= 10;
printf("%lfe+%03d\n",b*10,i);
return 0;
}
输出202、117、70、130的十进制、八进制、十六进制数据形式,结果为Oddddd或0Xddddd。
格式
输入格式: 无
输出格式: 输出为整型,空格分隔。每个数的输出占一行。
样例1
输入格式: 无
输出格式:
202 0312 0XCA
117 0165 0X75
70 0106 0X46
130 0202 0X82
import java.util.Scanner;
import java.util.*;
class Main {
public static void main(String[] args) {
int a = 202, b = 117, c = 70, d = 130;
System.out.println(String.format("%1$d %1$#o %1$#x", a).toUpperCase());
System.out.println(String.format("%1$d %1$#o %1$#x", b).toUpperCase());
System.out.println(String.format("%1$d %1$#o %1$#x", c).toUpperCase());
System.out.println(String.format("%1$d %1$#o %1$#x", d).toUpperCase());
}
}
#include
using namespace std;
int main( )
{
int a=202,b=117,c=70,d=130;
printf("%d %.4o 0X%X\n",a,a,a);
printf("%d %.4o 0X%X\n",b,b,b);
printf("%d %.4o 0X%X\n",c,c,c);
printf("%d %.4o 0X%X\n",d,d,d);
return 0;
}
已知a、b、c是一个十进制数的百位、十位、个位,求这个十进制数。
格式
输入格式: 输入为正整型a、b、c,空格分隔
输出格式: 输出为整型
样例1
输入格式: 1 3 4
输出格式: 134
import java.util.Scanner;
import java.util.*;
class Main {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
// code here
String num = input.nextLine().replace(" ", "");
System.out.println(Integer.valueOf(num));
input.close();
}
}
#include
using namespace std;
int main( )
{
int a,b,c;
scanf("%d %d %d",&a,&b,&c);
printf("%d%d%d",a,b,c);
return 0;
}
编写一个程序,要求输入一个两位数的数字,然后逆序输出数字。不考虑不合理的输入或是溢出等特殊情况。
格式
输入格式: 输入正整数
输出格式: 输出为逆序后的字符串
样例1
输入格式: 28
输出格式: 82
import java.util.Scanner;
import java.util.*;
class Main {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
// code here
int num = input.nextInt();
System.out.println(String.format("%d%d", num % 10, num / 10));
input.close();
}
}
#include
using namespace std;
int main( )
{
int a,b,c;
scanf("%d",&a);
b=a/10;
c=a%10;
a=b+c*10;
printf("%.2d",a);
return 0;
}