我编写了一个小程序,它接受一个字符串输入,并输出字符串,每个字符数向上移动3.只有问题是在每个字符串的末尾打印一个%
字符。
#include <iostream>
#include <stdio.h>
#include <string>
int main()
{
std::cout << "Input message: " << std::endl;
std::string mes;
std::cin >> mes;
for(char& c : mes)
{
printf ("%c", c+3);
}
}
这是该程序的使用和输出:
Input message:
hi
kl%
答案 0 :(得分:6)
您看到的是程序结束后来自您的shell的提示,因为您没有打印换行符。
在printf("\n");
退出之前向main
右侧投掷,您将获得所需的结果。
通过添加换行符演示工作代码:http://melpon.org/wandbox/permlink/ojJ7mozen4TA4qke