单选题在长度为n的字符串S的第i个位置插入另外一个字符串,i的合法值应该是()。Ai>0Bi≤nC1≤i≤nD1≤i≤n+1
单选题
在长度为n的字符串S的第i个位置插入另外一个字符串,i的合法值应该是()。
A
i>0
B
i≤n
C
1≤i≤n
D
1≤i≤n+1
参考解析
解析:
暂无解析
相关考题:
请编写函数proc,该函数的功能是:将放在字符串数组中的M个字符串(每串的长度不超过N),按顺序合并组成一个新的字符串。 例如,若字符串数组中的M个字符串为: ABCD BCDEFG CDEFGHI 则合并后的字符串内容应该是ABCDBCDEFGCDEF—GHl。 注意:部分源程序给出如下。 请勿改动main函数和其他函数中的任何内容,仅在函数proc的花括号中填人所编写的若干语句。 试题程序: includestdio.h includeconio.h define M 3 define N 20 void proc(char arr[M][N],char*b) {} void main { char str[M][N]={"ABCD","BCDEFG"," CDEFGHI"},i; char arr[100]={" "); printf("The string:\n"); for(i=0;iM;i++) puts(str[i]); printf("\n"); proc(str,arr); printf("The A string:\n"); printf("%s",arr); printf("\n\n"); }
[说明1]函数void convelt(chal *a,int n)是用递归方法将一个正整数n按逆序存放到一个字符数组a中,例如,n=123,在a中的存放为'3'、'2'、'1'。[C函数1]void convert(char *a,int n){ int i;if((i=n/10)!=0; convert( (1) ,i);*a= (2) ;}[说明2]函数int index(char *s,char *t)检查字符串s中是否包含字符串t,若包含,则返回t在s中的开始位置(下标值),否则返回-1。[C函数2]int index(char *s,char *t){ int i,j=0;k=0;for(i=0;s[i]!:'\0';i++)( for( (3) ;(t[k]!='\0')(s[j]!='\0')( (4) );j++,k++);if( (5) ) return(i);}return(-1);}
这程序有错吗? /*写一个函数,用来返回一个字符串中重复出现的最长字串的长度及其开始地址const char*p=NULL;int len=maxsubstr("qweohiuweyowohifpw",输出:len=3,substr=ohi*/#includestdio.h#includestring.hint maxsubstr(const char *str,const char **p){ int len=0,templen=0;//len为字符串中重复出现的最长字串的长度,templen为判断过程中字符串中重复出现的字串的长度 int size=strlen(str); const char*i=str,*j=0; //i=str即i=str[0],i指向字符串的第一个字符 for(i=str;istr+size;i++){ //i依次指向字符串内的各个字符 const char *temp_i=i; //temp_i指向当前i所指字符 for(j=i+1;jstr+size;++j){ //j指向当前i所指字符的下一个字符,temp_i、j依次在总字符串中取两个字符串,temp_i在前,即在temp_i后寻找 与从temp_i开始的字符串重复长度最长的字符串 if(*temp_i==*j ++temp_i; } else if(*temp_i==*j ++temp_i; } else{ //当前所指字符不相等,temp_i需要指回i所指位置,j指回此次循环开始位置(由于for循环有++j,实际下次循环开始时往后指了一个) if(templenlen){ //判断重复出现的最长字串的长度是否改变 len=templen; templen=0; *p=i; }else{ templen=0; //就算重复出现的最长字串的长度不改变,当前长度也得清零。。。 } } } } return len;}int main(){ char str[10000]; const char*p=0; int len=0; int i=0; printf("输入带重复字符的字符串"); scanf("%s",str); len=maxsubstr(str, printf("len=%d,substr=",len); for(i=0;ilen;i++){ printf("%c",*p++); } printf("\n");}
请编写函数fun(),该函数的功能是:将放在字符串数组中的M个字符串(每串的长度不超过N),按J顷序合并组成一个新的字符串。例如,若字符串数组中的M个字符串为AAAABBBBBBBCC则合并后的字符串内容应该是AAAABBBBBBBCC注意:部分源程序给出如下。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。试题程序:include <conio. h>define M 3define N 20void fun (char a [M] [N], char *b){}main ( ){char w [M] [N] ={"AAAA", "BBBBBBB", "CC"}, i;char a[100]={" "};printf ("The string: \n ");for (i=0; i<M; i++)puts (w[i]);printf (" \n ");fun (w, a);printf ("The A string: \n ");printf("%s ",a);printf("\n\n ");}
下列给定程序中,函数fun()的功能是将字符串s中位于偶数位置的字符或ASCII码为奇数的字符放入字符串t中(规定第一个字符放在第0位中)。例如:字符串中的数据为ADFESHDI,则输出应当是 AFESDI。请改正程序中的错误,使它能得到正确结果。注意;不要改动main函数,不得增行或删行,也不得更改程序的结构。试题程序:include <conio.h>include <stdio.h>include <string.h>define N 80/************found*************/void fun(char s,char t[]){int i,j=0;for(i=0;i<strlen(s);i++)/*********found*+************/if(i%2=0 || s[i]%2!=0)t[j++]=s[i];t[j]='\0';}main(){char s[N],t[N];clrscr();printf("\nPlease enter string s:");gets(s);fun(s,t);printf("\nThe result is:%s\n",t);}
若某线性表长度为n且采用顺序存储方式,则运算速度最快的操作是(37)。A.查找与给定值相匹配的元素的位置B.查找并返回第i个元素的值(1≤i≤n)C. 删除第i个元素(1≤i≤n)D.在第i个元素(1≤i≤n)之前插入一个新元素
若某线性表长度为n且采用顺序存储方式,则运算速度最快的操作是( )。A.查找与给定值相匹配的元素的位置B.查找并返回第i个元素的值(1≤i≤n)C.删除第i个元素(1≤iD.在第i个元素(1≤i≤n)之前插入一个新元素
单选题在长度 n的顺序表的第i(1≤i≤n+1)个位置上插入一个元素,元素的移动次数为()An-i+1Bn-iCiDi-1