PTA 7-244 逆序数的逆序和
分数 10
作者 usx程序设计类课程组
单位 绍兴文理学院
输入两个正整数,先将它们分别倒过来,然后再相加,最后再将结果倒过来输出。注意:前置的零将被忽略。例如,输入305和794。倒过来相加得到1000,输出时只要输出1就可以了。测试数据保证结果在int类型的表示范围内。
输入格式:
首先输入一个正整数T,表示测试数据的组数,然后是T组测试数据。每组测试输入两个正整数a、b。
输出格式:
对于每组测试,将a、b逆序后求和并逆序输出(前导0不需输出)。
输入样例:
2
21 6
123 456
输出样例:
81
579
代码长度限制
16 KB
时间限制
400 ms
内存限制
64 MB
#include <stdio.h>
int reverse(int x){ //逆序函数
int sum_x = 0;
while(x > 0){ //结束条件
sum_x = sum_x*10 + x%10; //逆序
x = x/10;
}
return sum_x;
}
int main(){
int n; //n组测试数据
int st_inte, nd_inte, sum = 0;
scanf("%d", &n); //输入测试组数量
for(int i = 1; i <= n; i++){ //每组测试
scanf("%d %d", &st_inte, &nd_inte); //输入两个整数
st_inte = reverse(st_inte); //调用函数将第一个整数逆序
nd_inte = reverse(nd_inte); //调用函数将第二个整数逆序
sum = reverse(st_inte+nd_inte); //将两个逆序后的整数相加
if(i == n){ //不换行
printf("%d", sum);
break;
}
printf("%d\n", sum);
}
return 0;
}
解题思路:
step1:定义一个将整数逆序的函数
step2:分别调用函数将两个整数分别逆序
step3:将逆序后的两个整数相加求和
step4:最后将和逆序后输出即可
归属知识点:
函数
循环结构