题目:输入一个整数(含负数),输出3个数据:
1.位数
2.拆分输出,空格隔开,其中 “-” 号与第一个数字一起输出
3.输出反转数
例:
输入:
-12345
输出:
5
-1 2 3 4 5
-54321
代码:
1 #include <iostream> 2 #include <string> 3 using namespace std; 4 int main() 5 { 6 string str; 7 int i = 0; 8 cin >> str; 9 int size; 10 size = str.length(); 11 char *p = new char[size]; 12 strcpy(p, str.c_str()); 13 if (p[0] == '-') 14 { 15 cout << size - 1 << endl; 16 } 17 else { cout << size << endl; } 18 if (p[0] == '-') 19 { 20 cout << p[0]; 21 } 22 for (i = 0; i < size; i++) 23 { 24 if (p[i] >= '0'&&p[i] <= '9') 25 { 26 cout << p[i] << " "; 27 } 28 } 29 cout << endl; 30 if (p[0] == '-') 31 { 32 cout << p[0]; 33 } 34 for (i = 0; i < size; i++) 35 { 36 if (p[size - 1 - i] >= '0'&&p[size - 1 - i] <= '9') 37 { 38 cout << p[size - 1 - i]; 39 } 40 } 41 return 0; 42 }
结果:
分析:这样的实现总觉得还可以更简化···有哪位大神可以给个提示吗···
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/c-cdevelopment/608066.html