#include <stdio.h> #define MAXLEN 1000+1 int main() { int T; char s[MAXLEN]; scanf("%d%*c", &T); while( T-- ) { int n, m; gets(s); scanf("%d%d%*c", &n, &m ); for( int i=n-1; i<n-1+m; i++ ) printf("%c", s[i]); printf("\n"); } return 0; }
时间: 2024-04-21 16:30:26 浏览: 23
这是一个C语言程序,作用是从输入的字符串中截取一段子串并输出。具体来说,程序首先读入一个整数T,表示接下来有T组测试数据。每组测试数据包含一个字符串s和两个整数n、m,表示从字符串s的第n个字符开始往后截取长度为m的子串。
程序通过循环T次来处理每组测试数据,首先使用gets函数读入一个字符串s,然后使用scanf函数读入两个整数n和m。接着,程序使用for循环遍历从第n个字符开始的连续m个字符,并使用printf函数输出这些字符,最后再输出一个换行符。
需要注意的是,程序中使用了一个特殊的scanf格式化字符串"%*c",表示读入一个字符但不存储它。这是为了避免gets函数读入的字符串中含有换行符而导致scanf函数读入错误的问题。
相关问题
练习-编写函数输入一批字符串,输出其中最长的字符串.#include <stdio.h> #include<string.h> #define M 100 #define N 80 void inputarr (char array[ ][N] , int n); int maxlenstr (char array[ ] [N] , int n); int mystrlen(const char str[ ]);
下面是一个实现输入一批字符串,输出其中最长的字符串的示例代码:
```
#include <stdio.h>
#include <string.h>
#define M 100
#define N 80
void inputarr(char array[][N], int n);
int maxlenstr(char array[][N], int n);
int mystrlen(const char str[]);
int main() {
char array[M][N];
int n, maxlen;
printf("请输入字符串个数:");
scanf("%d", &n);
inputarr(array, n);
maxlen = maxlenstr(array, n);
printf("最长的字符串是:%s\n", array[maxlen]);
return 0;
}
void inputarr(char array[][N], int n) {
int i;
printf("请输入%d个字符串:\n", n);
for (i = 0; i < n; i++) {
scanf("%s", array[i]);
}
}
int maxlenstr(char array[][N], int n) {
int i, maxlen = 0, maxindex = 0;
for (i = 0; i < n; i++) {
if (mystrlen(array[i]) > maxlen) {
maxlen = mystrlen(array[i]);
maxindex = i;
}
}
return maxindex;
}
int mystrlen(const char str[]) {
int len = 0;
while (str[len] != '\0') {
len++;
}
return len;
}
```
这个程序中,首先定义了一个二维字符数组 `array`,用于存储输入的字符串。然后通过 `inputarr()` 函数输入这些字符串。接着,通过 `maxlenstr()` 函数找到其中最长的字符串所在的位置,最后输出该字符串即可。
需要注意的是,在输入字符串时,我们使用了 `scanf()` 函数,这个函数可以读取以空格或回车分隔的字符串,但是如果输入的字符串中有空格,那么空格后面的内容就会被忽略。
以不同的方式改写#include <stdio.h> #include <stdlib.h> #define MAXLEN 100 typedef char DataType; typedef struct { DataType data[MAXLEN]; int length; } SeqBTree; void InitSeqBiTree(SeqBTree* T) { T->length = 0; } void CreateSeqBTree(SeqBTree* T) { int i; printf("请按顺序输入完全二叉树的节点:"); for (i = 1; i <= T->length; i++) { scanf_s(" %c", &T->data[i]); } } void ShowSeqBTree(SeqBTree* T) { int i = 1; int k; printf("输入完全二叉树(格式:双亲节点:左孩子,右孩子))\n"); while (i <= T->length) { printf("%c:", T->data[i]); if (2 * i <= T->length) printf("%c,", T->data[2 * i]); else printf(" ,"); if (2 * i + 1 <= T->length) printf("%c\n", T->data[2 * i + 1]); else printf(" \n"); i++; } } int main() { SeqBTree T; int n; InitSeqBiTree(&T); printf("请输入完成二叉树的节点个数:"); scanf_s("%d", &n); T.length = n; CreateSeqBTree(&T); ShowSeqBTree(&T); }这个代码
#include <stdio.h>
#include <stdlib.h>
#define MAXLEN 100
typedef char DataType;
typedef struct {
DataType data[MAXLEN];
int length;
} SeqBTree;
void InitSeqBiTree(SeqBTree* T) {
T->length = 0;
}
void CreateSeqBTree(SeqBTree* T) {
int i;
printf("请按顺序输入完全二叉树的节点:");
for (i = 1; i <= T->length; i++) {
scanf_s(" %c", &T->data[i]);
}
}
void ShowSeqBTree(SeqBTree* T) {
int i = 1;
int k;
printf("输入完全二叉树(格式:双亲节点:左孩子,右孩子))\n");
while (i <= T->length) {
printf("%c:", T->data[i]);
if (2 * i <= T->length)
printf("%c,", T->data[2 * i]);
else
printf(" ,");
if (2 * i + 1 <= T->length)
printf("%c\n", T->data[2 * i + 1]);
else
printf(" \n");
i++;
}
}
int main() {
SeqBTree T;
int n;
InitSeqBiTree(&T);
printf("请输入完成二叉树的节点个数:");
scanf_s("%d", &n);
T.length = n;
CreateSeqBTree(&T);
ShowSeqBTree(&T);
return 0;
}
相关推荐
![text/x-c](https://img-home.csdnimg.cn/images/20210720083646.png)
![text/x-c](https://img-home.csdnimg.cn/images/20210720083646.png)
![application/msword](https://img-home.csdnimg.cn/images/20210720083327.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)