解题思路:采用数组,先将数据的每一位存下来,然后将数据的每一位再输出,最后将这个数据进行运算,得到相反数,在这里,可能有的同学会将这个数字当字符串来处理,直接反转,虽然在结果上看着相似,却是违反了规则,就像练功一样,只能做到形似而不能神似。
注意事项:按照题目要求求解。
参考代码:
#include<iostream> #include <cstring> #include <math.h> using namespace std; int fAnalysis(int arr[], int data){ int i = 0; while(data){ arr[i] = data % 10; data /= 10; i++; } return --i; } int main() { int indata, data[5], newdata = 0; int i, digit; cin >> indata; memset(data, '\0', sizeof(data)); digit = fAnalysis(data, indata); cout << digit + 1 << endl; for(i = digit; i >= 0; i--){ cout << data[i] << ' '; newdata += data[i] * pow(10, digit - i); } cout << endl; cout << newdata << endl; return 0; }
0.0分
1 人评分