学英语

截取字符串

https://www.nowcoder.com/practice/a30bbc1a0aca4c27b86dd88868de4a4a?tpId=37&&tqId=21269&rp=1&ru=/ta/huawei&qru=/ta/huawei/question-ranking

题意:多组输入,输入一个字符串,再输入一个截取的字符串的长度k,输出截取后的字符串,即字符串的前k个字符

1.循环输出
由题意得我们只需要截取的前k个字符,那我们循环k次,输出要的字符即可

#include<bits/stdc++.h>
using namespace std;
int main() {
    char str[105];
    int k;
    while(scanf("%s",str) != EOF) {
        scanf("%d",&k);
        for(int i = 0 ; i < k ; i++) {
            printf("%c",str[i]);
        }
        printf("\n");
    }
    return 0;
}

2.利用字符串末尾是\0
因为C/C++里面字符串的定义是以\0结尾,当以字符串输出的时候,检查到第一个\0后,后面的字符将不会输出,那我们可以直接将第k+1个字符置为\0,然后再以字符串输出即可

#include<bits/stdc++.h>
using namespace std;
int main() {
    char str[105];
    int k;
    while(scanf("%s",str) != EOF) {
        scanf("%d",&k);
        str[k] = '\0';
        printf("%s\n", str);
    }
    return 0;
}


全部评论

相关推荐

拼搏白天我要去影石飓风&nbsp;太羡慕了&nbsp;能不能全中国的公司都推行啊
牛可乐:看了下官网只有这个能干了,我现在去考营养师资格证查看图片
投递影石Insta360等公司10个岗位
点赞 评论 收藏
分享
珩珺:那些经历都太大太空了,实习的情况不了解,大创项目连名字、背景、目的及意义都没体现出来;地摊经济更是看完连卖的什么产品都不知道,项目成果直接写营收多少都更直观真实一点;后面那个校文体部的更是工作内容是组织活动整理流程,成果变成了当志愿者,而且你们学校本科学生会大一入学就直接当部长吗,志愿里面还提到了疫情防控,全面解封是22年12月的事情,可能时间上也有冲突。可能你花了钱人家就用AI给你随便写了点内容改了一下,没什么体现个性化的点
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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