题解 | #参数解析#

参数解析

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

#include <stdio.h>
#include <string.h>

int main() {
    char s[1001];
    while (fgets(s, sizeof(s), stdin) != NULL) {
        int len = strlen(s);
        char argument[500][100];
        int argc = 0;
        int inQuote = 0;
        char* temp = NULL;
        int tempIndex = 0;
        for (int i = 0; i < len; i++) {
            if (!inQuote && (s[i] != '"' && s[i] != ' ')) {
                temp = argument[argc];
                tempIndex = 0;
                while (i < len && s[i] != '"' && s[i] != ' ') {
                    temp[tempIndex++] = s[i++];
                }
                temp[tempIndex] = '\0';
                argc++;
            } else if (s[i] == '"') {
                temp = argument[argc];
                tempIndex = 0;
                i++;
                while(s[i] != '"' && i < len) {
                    temp[tempIndex++] = s[i++];
                }
                temp[tempIndex] = '\0';
                argc++;
                i++;
            } else if (s[i] == ' ') {
                continue;
            }
        }
        printf("%d\n", argc);
        for (int i = 0; i < argc; i++) {
            printf("%s\n", argument[i]);
        }
    }
    return 0;
}

全部评论

相关推荐

点赞 评论 收藏
分享
听说有的211,本科真实就业率(去掉升学)才三、四成简直是耸人听闻这样下去,“好的211就业率不比大专差”可能真的不是笑话至少人家真的有技术,可以卖力气
秋盈丶:最多三成,有四成我直接吃,去年的人都没消化完今年又来了1200w,更可怕的是明年又有1200w,后年1300w,好消息,今年是未来十年最好的一年
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
昨天 14:11
很喜欢小米的新车,校招薪资每月22k,攒多久能买?
测试糕手手:别看工资,先看现金流存款。有50W存款以上再考虑,车是消耗品,选适合自己的重要。你有钱就当我没说过
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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