PTA 7-279 字符串输入输出练习

PTA 7-279 字符串输入输出练习

分数 10
作者 黄龙军
单位 绍兴文理学院

输入起始位置m、长度l及字符串s,要求输出字符串s从第m个字符开始的长度为l的子串。

输入格式:
测试数据有多组,处理到文件尾。
每组测试数据输入一行,首先是以一个空格间隔的两个整数m、l,分别表示起始位置和长度,然后在一个空格之后是一个字符串s(长度不超过80,可能包含空格)。测试数据保证取得的结果字符串至少包含一个字符。

输出格式:
对于每组测试,输出字符串s从第m个字符开始的长度为l的子串(若长度不足l,则只需输出从第m个字符开始到最后一个字符结束的子串)。每两组测试数据之间留一个空行。

输入样例:

1 2 hello world!
9 6 welcome to acm world

输出样例:

he

to acm

来源:
黄龙军, 等. 大学生程序设计竞赛入门—C/C++程序设计(微课视频版), 北京:清华大学出版社, 2020.11. ISBN:9787302564744

代码长度限制
16 KB
时间限制
400 ms
内存限制
64 MB

#include<stdio.h>
int main(){
    
    int m, l, i, j = 0;
    char s[80][80];
    char ss[80][80];
    
    while(scanf("%d %d", &m, &l) != EOF){    //处理到文件尾
            gets(s[j]);    //获取字符串
            for(i = m; i < m+l; i++){    //按照题目要求截取字符串并储存到另一个数组中
                ss[j][i-m] = s[j][i];
            }
            ss[j][l] = '\0';
            j++;
    }
    for(i = 0; i < j; i++){
        puts(ss[i]);
        if(i != j-1){    //换行处理
            printf("\n");
        }
    }
    return 0;
}

解题思路:
将符合题目要求的字符串储存另一个数组中,然后输出
注: 输出格式

归属知识点:
数组
循环结构