VFP数据库

在函数AT(<子串)<字符型表达式>[,<次数>]中,如果<子串>在<字符型表达式>中不存在,则返回逻辑值

题目

在函数AT(<子串)<字符型表达式>[,<次数>]中,如果<子串>在<字符型表达式>中不存在,则返回逻辑值

如果没有搜索结果,请直接 联系老师 获取答案。
如果没有搜索结果,请直接 联系老师 获取答案。
相似问题和答案

第1题:

以下能从字符串\"VisualBasic\"中直接取出子字符串\"Basic\"的函数是( )。

A.Left

B.Mid

C.String

D.Instr


正确答案:B

通过字符串函数Mid即可以实现字符串Basic的提取,提取过程如下:c=VisualBasic:print Mid(c,7,5)。 

第2题:

函数String(n,"str")的功能是( )。

A.把数值型数据转换为字符串

B.返回由n个字符组成的字符串

C.从字符串中取出n个字符

D.从字符串中第n个字符的位置开始取子字符串


正确答案:B

第3题:

试题四(共 15分)

阅读以下说明和C函数,将解答填入答题纸的对应栏内。

【说明】

函数del_substr(S,T)的功能是从头至尾扫描字符串 S, 删除其中与字符串T相同的所有子串,其处理过程为:首先从串 S 的第一个字符开始查找子串 T,若找到,则将后面的字符向前移动将子串T覆盖掉,然后继续查找子串T,否则从串S的第二个字符开始查找,依此类推,重复该过程,直到串S的结尾为止。该函数中字符串的存储类型 SString

定义如下:

typedef struct {

char *ch; /*串空间的首地址*/

int length; /*串长*/

}SString;

【C函数】

void del_substr(SString *S, SString T)

{

int i, j;

if ( S->length < 1 || T.length < 1 || S->length < T.length )

return;

i = 0; /* i为串S中字符的下标 */

for ( ; ; ) {

j = 0; /* j为串T中字符的下标 */

while ( i < S->length && j < T.length ) { /* 在串S中查找与T相同的子串 */

if ( S->ch[i]==T.ch[j] ) {

i++; j++;

}

else {

i = (1) ; j = 0; /* i值回退,为继续查找T做准备 */

}

}

if ( (2) ) { /* 在S中找到与T相同的子串 */

i = (3) ; /* 计算S中子串T的起始下标 */

for(k = i+T.length; k<S->length; k++) /* 通过覆盖子串T进行删除 */

S->ch[ (4) ] = S->ch[k];

S->length = (5) ; /* 更新S的长度 */

}

else break; /* 串S中不存在子串T*/

}

}


正确答案:
试题四参考答案

(1)i-j+1,或其等价形式             (3分)
若考生解答为i-j,则给1分

(2)j==T.length,或j>=T.length,或其等价形式     (3分)

(3)i-j              (3分)

(4)k -T.length,或k-j,或其等价形式       (3分)

(5)S->length-T.length,或S->length-j       (3分)

第4题:

下列VB函数中,可在字符串中提取子串的有()。

A、InStr

B、Left

C、Right

D、Asc


答案:ABCD

第5题:

函数String(n,字符串)的功能是( )。

A.把数值型数据转换为字符串

B.返回由n个字符组成的字符串

C.从字符串中取出n个字符

D.从字符串中第n个字符的位置开始取子字符串


正确答案:B

第6题:

编写一个函数,该函数可以统计一个长度为2的字符串在另一个字符串中出现的次数。例如,假定输入的字符串为asd asasdfg asd as zx67 asd mklo,子字符串为as,则应当输出6。

注意:部分源程序给出如下。

请勿改动主函数main和具他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。

试题程序:

include <conio.h>

include <stdio.h>

include <string.h>

int fun(char *str, char *substr)

{

}

main ( )

{

char str[81],substr[3];

int n;

clrscr ();

printf ("输入主字符串 ");

gets (str);

printf ("输入子字符串");

gets (substr);

puts (str);

puts (substr);

n=fun (shr, substr);

printf("n=%d\n ",n);

}


正确答案:int fun(char *str char *substr) { int i j=0; for(i=0;str[i+1]!='\0';i++) /*如果一个长度为2的子字符串在主字符串中出现一次则j+1 如此 循环*/ if (str [i]==substr [0] &&str [i+1]==substr [1] ) j++; return j; /*返回子字符串在主字符串中出现的次数*/ }
int fun(char *str, char *substr) { int i, j=0; for(i=0;str[i+1]!='\0';i++) /*如果一个长度为2的子字符串在主字符串中出现一次,则j+1, 如此 循环*/ if (str [i]==substr [0] &&str [i+1]==substr [1] ) j++; return j; /*返回子字符串在主字符串中出现的次数*/ } 解析:该题中subsu只有两个字符,所以可以用if语句来直接进行判断。要注意if())中str组的下标为i和i+1,即比较当前字符及其以后的一个字符是否分别与substr中的字符对应相同,若都相同则表示出现了一次。

第7题:

以下能从字符串“Visual Basic”中直接取出子字符串“Basic”的函数是______。

A.Left

B.Mid

C.String

D.Instr


正确答案:B
解析:Mid(s,index,length)用来从字符串s中的第index字符开始连续取出length个字符。对于本题,可以用 Mid("VisualBasic",7,5)就可以取出字符串“Basic”。

第8题:

如果要替换字符串中与指定正则表达式匹配的子串,可以使用re模块的()函数。

A、replace

B、split

C、sub

D、subn


参考答案:CD

第9题:

在VBScript中,能够获取字符串的子串的内部函数有()。

A、InStr

B、Left

C、Right

D、Mid


答案:ABCD

第10题:

在一个string类对象表示的字符串中查找子串,应该使用string类的()函数。

A.swap

B.insert

C.find

D.assign


正确答案:C

更多相关问题