会C语言的进,关于单个字符串的基本操作

来源:百度知道 编辑:UC知道 时间:2024/06/03 18:11:06
帮忙写个程序,要求:1接受输入任意长度字符串,出入前大体知道其长度;2获取一只字符串长度;3获取已输入字符串左端或右端长度为N的字符串,若N大于字符串总长度则获取整个字符串;4根据给定的起始位置和长度获取已知字符长中间部分字串;5判断给定字符是否在已知字符串中,存在则给出所在位置;6将已知字符串反转;7将字符串所有字符变换为大写字符
我会给至少200分的,大家都来帮帮忙1

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

void main ()
{
char s[200];
char left[200],right[200];
int L,i,j;
int N,m=0;
char cc[2];
printf("Please enter the string\n");
fgets(s,199,stdin);
L = strlen(s);
printf("string L=%d\n",L);
printf("Please enter N \n");
scanf("%d",&N);

if (N < L){
strncpy(left,s,N); left[N]='\0';
strncpy(right, &s[L-N-1],N); right[N]='\0';
printf("left: %s\n",left);
printf("right: %s\n",right);
} else {
printf("left,right: %s\n",s);
}

printf("Please enter begin location m and N\n");
scanf("%d %d",&m,&N);
if (m>L) m=0;
strncpy(right, &s[m],N); right[N]='\0';
printf("mid: %s\n",right);

printf("enter a letter:\n&qu