题目
编程将一个整数字符串转为整数,并加上1后输出。(提示:cin.getline(char*, int))
输入:
Integer: 1234
输出:
1235
我的代码
#include <iostream>
using namespace std;
int main()
{
const int n = 100;
char a[n];
long long int sum = 0;
int flag = 0;
cin.getline(a, 100); // 输入整型字符
for (int i = 0; i < n; i++) {
if (a[i] == '-') // 判断输入的数是否为负数
flag = 1;
else if (a[i] >= 48 && a[i] <= 57) { // 判断该元素是否为整型字符
sum = sum * 10 + a[i] - 48;
}
else if (a[i] == '+')
flag = 2;
}
if (flag == 1) { // 如果是负数,将sum转化为负数+1输出
sum = -sum;
cout << ++sum;
}
else // 正数,输出sum+1
cout << ++sum;
}