每天一道C语言编程:(去掉:双斜杠注释,去掉空格)

一.去双斜杠注释

题目描述

将C程序代码中的双斜杠注释去掉。

输入格式

输入数据中含有一些符合C++语法的代码行(每行代码不超过200个字符)。需要说明的是,为了方便编程,规定双斜杠注释内容不含有双引号,源程序中没空行。

输出格式

输出不含有双斜杠注释的C++代码,除了注释代码之外,原语句行格式不变。

样例输入

//======================
// simplest program
//======================
#include
using namespace std;
//----------------------
int main(){
  cout<<”hello world!\n”;
}//---------------------

样例输出

#include
using namespace std;
int main(){
  cout<<”hello world!\n”;
}

这个代码较为简单,只是注意要分两种情况:第一种情况是开头就有斜杠的情况,直接break

//======================

if(str[0]=='/' && str[1]=='/')
                break;

第二种情况是 中间有斜杠的情况,先遍历再break

}//---------------------

else
{
       for(int i=0;i

 所以最终代码

#include
#include
int main()
{
    char str[1000];
    while(gets(str))
    {
        int len=strlen(str);
        for(int i=0;i

二.去空格

题目描述

读入一些字符串,将其中的空格去掉。

输入格式

输入为多行,每行为一个字符串,字符串只由字母、数字和空格组成,每个字符串长度不超过80。

输出格式

对于每行输入,输出转换后的字符串。

样例输入

Hello World
1 2 3
Nice to meet you
abc

样例输出

HelloWorld
123
Nicetomeetyou
abc

与上题解法相似,遇到“ ”(空格就跳过),较为简单,直接放代码

#include
#include
int main()
{
    char str[1000];
    while(gets(str))
    {
        int len=strlen(str);
        for(int i=0;i

本来还有“去掉括号”这一题,但是这一题需要用到栈,题目较难,博主整理好在单独写出来

你可能感兴趣的:(编程训练,算法)