Mark11


私信TA

用户名:Mark11

访问量:24407

签 名:

懒惰,傲慢,愤怒

等  级
排  名 381
经  验 5036
参赛次数 0
文章发表 47
年  龄 20
在职情况 学生
学  校 NorthWest University
专  业 S.E

  自我简介:

从头来过的苦逼

/*
 ** 本题中的双斜杠注释有两种情况
 ** 1.自成一段:这是要全部删去的,且不能留下一个空行
 ** 2.接在一行代码后:则需删去“//”后的所有字符及其自身
 ** 第一种情况,使用了continue:若读到本行起始即为“//”,
 ** 则不做任何操作,跳过
 ** 第二种情况,先是识别出“//”,然后将第一个“/”替换成“\0”
 ** 使输出提前终止
 */



#include<stdio.h>
#include<string.h>
int main(){
    char str[200];
    while(gets(str)){
        int len = strlen(str);
        
        if(str[0] == '/' && str[1] == '/'){
            continue;
        }
        
        for(int i = 1; i < len - 1; i++){
            if(str[i] == '/' && str[i + 1] == '/'){
                str[i] = '\0';
            }
        }
        
        puts(str);
    }
    
    return 0;
}


 

0.0分

3 人评分

看不懂代码?想转换其他语言的代码? 或者想问其他问题? 试试问问AI编程助手,随时响应你的问题:

编程语言转换

万能编程问答  

代码解释器

代码纠错

SQL生成与解释

  评论区

你好,我想请问一下:
12行:for(int i = 1; i < len - 1; i++){}中的len如果直接用strlen(str)代替就会运行错误
这是为什么呢
2019-12-31 09:53:36
  • «
  • 1
  • »