题解 | #参数解析#

参数解析

http://www.nowcoder.com/practice/668603dc307e4ef4bb07bcd0615ea677

#include<stdio.h>

int main(){
    char str[1001]  = {'0'};
    while(gets(str)){    //1.接收字符串
        int len = strlen(str);    //2.获取字符串总长度
        //3.计算参数个数--遇到"跳过计数
        int count = 1;
        if(str[0] == ' '){    //3.1若第一个是空格,则第一个不计参数数
            count = 0;
        }
        //3.2计算参数数
        for(int i = 0; i <len; i++){
            if(str[i] == ' ')
                count++;    //3.2.1若出现空格 先参数数累加  
            if(str[i] == '"'){    //3.2.2判断是否遇到首"
                //3.2.3跳转至"中的第一个字符 
                //3.2.4序列值累加直到遇到末"为止,期间只计数,此时若""中出现空格也不计数
                while(str[++i] != '"'){}
            }
        }
        printf("%d\n", count);
        
        //4.输出分解后的参数
        for(int i = 0; i < len; i++){
            if(str[i] != ' '){
                if(str[i] != '"'){
                    printf("%c", str[i]);    //4.1没有遇到"时正常输出直到' '为止
                }
                else{//4.2遇到首"时,跳转至"内第一个字符串开始连续输出至遇到末"为止
                    while(str[++i] != '"'){
                        printf("%c", str[i]);
                    }
                }
            }
            else{
                printf("\n");     //5.各参数输出结束后(即遇到' '或者末'"'),回车换行
            }
        }
    }
    return 0;
}
全部评论

相关推荐

06-13 12:13
已编辑
东北大学 射频工程师
26毕业的,日常实习还能找到吗
求实习的青提很想去大厂:目前应该还有hc吧,腾讯感觉还有hc,最近捞了我好几次,因为目前有offer,所以不准备面了,可以再找找,不行的话就找找中小厂试试,因为我之前也找了好久,准备放弃了,结果有个岗位流程特别顺利,然后就oc,只能说坚持下试试,万一呢💪
点赞 评论 收藏
分享
程序员牛肉:主要是因为小厂的资金本来就很吃紧,所以更喜欢有实习经历的同学。来了就能上手。 而大厂因为钱多,实习生一天三四百的就不算事。所以愿意培养你,在面试的时候也就不在乎你有没有实习(除非是同级别大厂的实习。) 按照你的简历来看,同质化太严重了。项目也很烂大街。 要么换项目,要么考研。 你现在选择工作的话,前景不是很好了。
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
06-13 19:30
化身华黑&nbsp;今天询问对接人审批情况,结果被告知没HC了&nbsp;云计算&nbsp;
苦闷的柠檬精allin实习:主管面结束后hr每周保温一次,结果前几天和我说没hc了,我也化身华黑子了
投递华为等公司8个岗位 > 华为求职进展汇总
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务