串的操作实验报告
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
四、实验小结
本次实验,加深了我对串的理解,了解了串的一些基本操作,看似很简单的操作,过程中还是会遇到许多错误,
五、指导教师评语
成绩
批阅人
日期
printf("两串字符连接后的结果为:");
str_print(&str2);
system("pause");
system("cls");
break;
case 3:printf("请输入一串字符:");
fflush(stdin);
str_input(&str1);
printf("请输入取子串的位置和长度:");
实验报告
(2016 / 2017学年第2学期)
课程名称
数据结构及应用算法教程
实验时间
2017年3月27日
指导教师
专业
学院(系)
计算机工程学院
学生姓名
学号
实验报告
实验名称
串的相关操作
一、实验目的和要求
要求:1.串的定位
2.求子串
3.串的连接
二、实验内容
#include<stdio.h>
#include<stdlib.h>
if(s2->string[i]!='\0')
{
s1->string[j]=s2->string[i] ;
i++;
}
else
{
break;
}
return s1;
}
SSTRING *str_con(SSTRING *s1,SSTRING *s2)
{
int i=s1->len,j=0,k;
for(k=0;k<str_len(s2);k++)
{
i++ ; ; ; ;
}
s1->string[i]='\0';
return s1;
}
SSTRING *str_sub(SSTRING *sub,SSTRING *s,int pos,int len)
{
int i=pos-1,j=0,k;
for(k=1;k<=len;k++)
{ ; ;
i++;
j++;
#define MAXSIZE 256
typedef struct
{ char string[MAXSIZE];
int len;
}SSTRING;
int str_len(SSTRING *s)
{
return s->len ;
}
void str_input(SSTRING *s)
{ int i=0;
char ch;
}
sub->string[j]='\0';
return sub;
}
void str_print(SSTRING *s)
{int i;
for(i=0;i<s->len;i++)
printf("%c",s->string[i]); ;
printf("\n");
}
void showmenu()
{ printf("\t1、求串的长度\n");
system("pause");
system("cls");
break;
case 2:printf("请输入第一串字符:");
fflush(stdin);
str_input(&str1);
printf("请输入第二串字符串:");
fflush(stdin);
str_input(&str2);
str_con(&str1,&str2);
printf("\t2、串的连接\n");
printf("\t3、求子串\n");
printf("\t4、退出程序\n");
}
void main()
{ int position,length,no;
SSTRING str,str1,str2;
str.len=0;
str1.len=0,str2.len=0;
scanf("%d%d",&position,&length);
str_sub(&str,&str1,position,length);
printf("子串为:");
puts(str.string);
system("pause");
system("cls");
break;
case 4:
return; } } }
s->len=0;
while((ch=getchar())!='\n')
{
s->string[i]=ch;
i++;
s->len++;
}
s->string[i]='\0';
}
SSTRING *str_rep(SSTRING *s1,SSTRING *s2,int pos)
{
int i=0,j;
for(j=pos-1;s1->string[j]!='\0';j++)
while(1)
{ showmenu();
printf("请输入你的选择:");
scanf("%d",&no);
switch(no)
{case 1:printf("请输入一串字符:");
fflush(stdin);
str_input(&str);
length=str_len(&str);
printf("字符串:%的长度为%d\n",str.string,length);
本次实验,加深了我对串的理解,了解了串的一些基本操作,看似很简单的操作,过程中还是会遇到许多错误,
五、指导教师评语
成绩
批阅人
日期
printf("两串字符连接后的结果为:");
str_print(&str2);
system("pause");
system("cls");
break;
case 3:printf("请输入一串字符:");
fflush(stdin);
str_input(&str1);
printf("请输入取子串的位置和长度:");
实验报告
(2016 / 2017学年第2学期)
课程名称
数据结构及应用算法教程
实验时间
2017年3月27日
指导教师
专业
学院(系)
计算机工程学院
学生姓名
学号
实验报告
实验名称
串的相关操作
一、实验目的和要求
要求:1.串的定位
2.求子串
3.串的连接
二、实验内容
#include<stdio.h>
#include<stdlib.h>
if(s2->string[i]!='\0')
{
s1->string[j]=s2->string[i] ;
i++;
}
else
{
break;
}
return s1;
}
SSTRING *str_con(SSTRING *s1,SSTRING *s2)
{
int i=s1->len,j=0,k;
for(k=0;k<str_len(s2);k++)
{
i++ ; ; ; ;
}
s1->string[i]='\0';
return s1;
}
SSTRING *str_sub(SSTRING *sub,SSTRING *s,int pos,int len)
{
int i=pos-1,j=0,k;
for(k=1;k<=len;k++)
{ ; ;
i++;
j++;
#define MAXSIZE 256
typedef struct
{ char string[MAXSIZE];
int len;
}SSTRING;
int str_len(SSTRING *s)
{
return s->len ;
}
void str_input(SSTRING *s)
{ int i=0;
char ch;
}
sub->string[j]='\0';
return sub;
}
void str_print(SSTRING *s)
{int i;
for(i=0;i<s->len;i++)
printf("%c",s->string[i]); ;
printf("\n");
}
void showmenu()
{ printf("\t1、求串的长度\n");
system("pause");
system("cls");
break;
case 2:printf("请输入第一串字符:");
fflush(stdin);
str_input(&str1);
printf("请输入第二串字符串:");
fflush(stdin);
str_input(&str2);
str_con(&str1,&str2);
printf("\t2、串的连接\n");
printf("\t3、求子串\n");
printf("\t4、退出程序\n");
}
void main()
{ int position,length,no;
SSTRING str,str1,str2;
str.len=0;
str1.len=0,str2.len=0;
scanf("%d%d",&position,&length);
str_sub(&str,&str1,position,length);
printf("子串为:");
puts(str.string);
system("pause");
system("cls");
break;
case 4:
return; } } }
s->len=0;
while((ch=getchar())!='\n')
{
s->string[i]=ch;
i++;
s->len++;
}
s->string[i]='\0';
}
SSTRING *str_rep(SSTRING *s1,SSTRING *s2,int pos)
{
int i=0,j;
for(j=pos-1;s1->string[j]!='\0';j++)
while(1)
{ showmenu();
printf("请输入你的选择:");
scanf("%d",&no);
switch(no)
{case 1:printf("请输入一串字符:");
fflush(stdin);
str_input(&str);
length=str_len(&str);
printf("字符串:%的长度为%d\n",str.string,length);