题解 | #参数解析#

参数解析

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

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

int main() {
    char str[1001];
    while (scanf("%[^\n]s", str)!=EOF) {
        getchar();  //讀取掉緩衝區內未讀入的'\n'符號,否則會一直while中讀取,值未讀到EOF
        // printf("%s", str);
        char parameter[1000][1001];
        int i=0,j=0,k, len=strlen(str), flag=0;
        for (k=0; k<=len; k++) {
            if (str[k]==' ' && flag==0) {
                parameter[i][j]='\0';
                i++;
                j=0;
            }
            else if (str[k]==' ' && flag==1) {
                parameter[i][j++]=str[k];
            }
            else if (str[k]=='"' && flag==0) {
                flag=1; continue;
            }
            else if (str[k]=='"' && flag==1) {
                flag=0; continue;
            }
            else {
                parameter[i][j++] = str[k];
            }
        }
        printf("%d\n", i+1);
        for (k=0; k<=i; k++) {
            printf("%s\n", parameter[k]);
        }
    }
    return 0;
}

全部评论

相关推荐

05-23 20:31
已编辑
武汉大学 Java
内向的柠檬精在研究求职打法:注意把武大标粗标大 本地你俩不是乱杀
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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