c语言:从键盘输入一个串,求从该串第i个字符开始的j个子串

从键盘输入一个串,求从该串第i个字符开始的j个子串
步骤
(1)定义一个定长的数组
(2)gets得到字符串
(3)输入i,j的值
(4)进行判断有没有溢出等
(5)进行输出结果

在这里插入代码片 #include<stdio.h>
#include<stdlib.h>
void main(){
	char Str[100];//定义一个字符数组
    int length=0;
	printf("输入一个字符串:\r\n");
	gets( Str );//得到一个字符数组
	for (length = 0; length < 100; length++){
		if(Str[length]=='\0'){
			break;
		}
	}
	//运用for循环得到这个字符串的长度
		int m,n,i,a;
		printf("输入让字符串从哪位开始: ");
		scanf("%d",&m);
		printf("输入让字符串从开始的子串数: ");
		scanf("%d",&n);
		a=m+n-1;
		//取到最后一个字符的位数
		/*a是临界判断是否在字符串里*/
		if(m>0&&a<=length){
		//m>0因为字符从第一个开始的
			printf("输入结果为\n");
			for (i=0;i<n;i++){
				printf("%c",Str[m+i-1]);
				//m+i-1是因为字符数组第一位是0
			}
		//for循环输出想要的得到的数据
		}
		else{
			printf("输入错误\n");
		}
	/*利用if-else的语句判断自己输入的m,n的结果在不在这个字符串里面。用这个语句可以防止数据出错,能够使程序相对来说不容易出错*/
	printf( "\n");
}

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值