下面一段程序要实现的功能是:在内存中从地址source开始有一个长度为100的字符串,测试该字符串中是否存在数字,如有则将DL的第五位置1,否则将该位置0。BEGIN: MOV CX,100MOV SI,0REPEAT: MOV SOURCE[SI]CMP AL,30HJB GOONGMP AL,【 】JA GOONOR DL,20HJMP EXITGOON: INC SILOOP REPFATIAND DL,00FHEXIT:

题目

下面一段程序要实现的功能是:在内存中从地址source开始有一个长度为100的字符串,测试该字符串中是否存在数字,如有则将DL的第五位置1,否则将该位置0。

BEGIN: MOV CX,100

MOV SI,0

REPEAT: MOV SOURCE[SI]

CMP AL,30H

JB GOON

GMP AL,【 】

JA GOON

OR DL,20H

JMP EXIT

GOON: INC SI

LOOP REPFATI

AND DL,00FH

EXIT:


相似考题
更多“下面一段程序要实现的功能是:在内存中从地址source开始有一个长度为100的字符串,测试该字符串中 ”相关问题
  • 第1题:

    下列对字符串的说法中,错误的是( )

    A.字符串就是一个字符数组

    B.字符串可以整体输入输出

    C.字符串可以比较大小

    D.存储字符串所需的内存空间等于字符串的长度


    正确答案:D 

  • 第2题:

    下面一段程序要实现的功能是:在内存中从地址SOURCE开始有一个长度为50的字符串,测试该字符串中是否存在数字,如有则将DL的第三位置1,否则将该位置0。 BEGIN: MOV CX,50 MOV SI, 0 LP: MOV SOURCE[SI] CMP AL,30H JB GOON CMP AL, ① JA GOON OR DL,20H JMP EXIT GOON: INC SI LOOP LP AND DL, ② EXIT: 则①,②中应为:

    A.35H,0DFH

    B.35H,0FFH

    C.39H,0DFH

    D.39H,OFFH


    正确答案:C
    解析:这段程序注意有两个转移语句,JB是在低于,或不高于等于,或进位位为1时转移,JA是在高于或不低于不等于转移。数字的ASCII码值范围是30H~39H,语句CMPAL,30H是和0比较,如果小于0,则转移到GOON,SI加1,继续和下一个比较,如果大于0,再判断是否小于9,即39H。所以第①处填39H。如果大于39H,说明不是数字,则再转移到GOON,SI加1,继续和下一个比较。如果结果没有数字,则执行ORDL,20H指令,将DL的第三位置1,如果有数字,则执行ANDDL,0DFH,将DL的第三位置0。故第②处填ODFH。

  • 第3题:

    C语言库函数fgets(str,n,fp)的功能是 ______。

    A.从fp指向的文件中读取长度n的字符串存入str旨向的内存

    B.从fp指向的文件中读取长度不超过n-1的字符串存入str指向的内存

    C.从fb指向的文件中读取n个字符串存入str指向的内存

    D.从str读取至多n个字符到文fp


    正确答案:B
    解析:fgets函数的作用是从指定的文件读入—个字符串。fgets(str,n,fp);中的n为要求得到的字符的个数,但只从中指向的文件输入n-1个字符,然后在最后加—个'\0'字符,因此得到的字符串共有n个字符。

  • 第4题:

    C语言库函数fgets(str,n,fp)功能是______。

    A.从中指向的文件中读取长度n的字符串存入int指向的内存

    B.从fp指向的文件中读取长度不超过n-1的字符串存入str指向的内存

    C.从fp指向的文件中读到n个字符串存入str指向的内存

    D.从str读取至多n个字符到文件fp


    正确答案:B
    解析:fgets函数的作用是从指定的文件读入—个字符串。fgets(str,n,fp);中的n为要求得到的字符的个数,但只从fp指向的文件输入n-1个字符,然后在最后加—个“\0”字符,因此得到的字符串共有n个字符。

  • 第5题:

    有以下函数

    该函数的功能是( )。

    A.计算s所指字符串占用内存字节的个数

    B.比较两个字符串的大小

    C.计算s所指字符串的长度

    D.将s所指字符串复制到字符串t中


    正确答案:C
    首先char*s接受一个字符型数组的首地址并将这个首地址赋给另一个字符型指针char*t,while(*t++)不断循环,直到*t为‘\o’,再将t一1,这时字符指针t指向字符串的最后一个字符,又因为s指向字符数组的首地址即字符串的首地址,所以return(t--s)便是返回字符数组中字符串的长度。故本题答案为C)。

  • 第6题:

    标准库函数fgets(s,n,file)的功能是( )。A.从文件file中读取长度为n的字符串存入字符数组S由S

    标准库函数fgets(s,n,file)的功能是( )。

    A.从文件file中读取长度为n的字符串存入字符数组S由

    B.从文件file中读取长度不超过n-1个字符的字符串放到字符数组S中

    C.从文件file中读到n个字符串存入字符数组s中

    D.从文件file中读取长度为n-1个字符的字符串存人字符数组s中


    正确答案:B
    本题考查fgets()函数的使用调用形式:fgets(S,n,fp)。fgets函数参数说明:“s”可以是一个字符数组名,也可以是指向字符串的指针;“n”为要读取的最多的字符个数;“fp”是指向该文件型指针。fgets函数的功能是:从fp所指向的文件中读取长度不超过n-1个字符的字符串,并将该字符串放到字符数组s中,读入字符串后会自动在字符串末尾加入″\0″结束符。表示字符串结束。

  • 第7题:

    下列给定程序中函数fun的功能是:统计substr所指的字符串在str所指的字符串中出现的次数。 例如,若字符串为aaas lkaaas,子字符串为as;则应输出2。 请改正程序中的错误,使它能得出正确的结果。 注意:部分源程序在文件MODll.C中,不得增行或删行,也不得更改的程序的结构!


    正确答案:
    【参考答案】

    【考点分析】
    本题考查:for循环语句的格式,for循环语句使用最为灵活,其一般形式为:for(表达式1;表达式2;表达式3),注意表达式之间使用”;”相隔;if条件语句的格式,其中if关键字需要区别大小写,这里不能混淆使用。关键字是由C语言规定的具有特定意义的字符串,也称为保留字。用户定义的标识符不应与关键字相同,并且关键字应小写。
    【解题思路】
    先看循环条件for(i=0,str[i],i++),不难发现此处for循环语句的格式有误,其中表达式之间应以”;”相隔;同时很容易发现if条件语句处的关键字书写错误。

  • 第8题:

    阅读以下说明和流程图,填补流程图中的空缺,将解答填入答题纸的对应栏内。
    [说明]
    下面流程图的功能是:在给定的两个字符串中查找最长的公共子串,输出该公共子串的长度L及其在各字符串中的起始位置(L=0时不存在公共字串)。例如,字符串"The light is not bright tonight"与"Tonight the light is not bright"的最长公共子串为"he light is not bright",长度为22,起始位置分别为2和10。
    设A[1:M]表示由M个字符A[1],A[2],…,A[M]依次组成的字符串;B[1:N]表示由N个字符B[1],B[2],…,B[N]依次组成的字符串,M≥N≥1。
    本流程图采用的算法是:从最大可能的公共子串长度值开始逐步递减,在A、B字符串中查找是否存在长度为L的公共子串,即在A、B字符串中分别顺序取出长度为L的子串后,调用过程判断两个长度为L的指定字符串是否完全相同(该过程的流程略)。
    [流程图]


    答案:
    解析:
    N或rnin(M,N)
    M-L+1
    N-L+1
    L-1
    L,I,J

    【解析】

    本题考查对算法流程图的理解和绘制能力。这是程序员必须具有的技能。
    本题的算法可用来检查某论文是否有大段抄袭了另一论文。"The light is not bright tonight"是著名的英语绕口令,它与"Tonight the light is not bright"大同小异。
    由于字符串A和B的长度分别为M和N,而且M≥N≥1,所以它们的公共子串长度L必然小于或等于N。题中采用的算法是,从最大可能的公共子串长度值L开始逐步递减,在A、B字符串中查找是否存在长度为L的公共子串。因此,初始时,应将min(M,N)送L,或直接将N送L。(1)处应填写N或min(M,N),或其他等价形式。
    对每个可能的L值,为查看A、B串中是否存在长度为L的公共子串,显然需要执行双重循环。A串中,长度为L的子串起始下标可以从l开始直到M-L+1(可以用实例来检查其正确性);B串中,长度为L的子串起始下标可以从1开始直到N-L+1。因此双重循环的始值和终值就可以这样确定,即(2)处应填M-L+1,或等价形式;(3)处应填N-L+1或等价形式(注意循环的终值应是最右端子串的下标起始值)。
    A串中从下标I开始长度为L的子串可以描述为A[I:I+L-1];B串中从下标J开始长度为L的子串可以描述为A[J:J+L-1]。因此,双重循环体内,需要比较这两个子串(题中采用调用专门的函数过程或子程序来实现)。
    如果这两个子串比较的结果相同,那么就已经发现了A、B串中最大长度为L的公共子串,此时,应该输出公共子串的长度值L、在A串中的起始下标I、在B串中的起始下标J。因此,(5)处应填L,I,J(可不计顺序)。
    如果这两个子串比较的结果不匹配,那么就需要继续执行循环。如果直到循环结束仍然没有发现匹配子串时,就需要将L减少1((4)处填L-1或其等价形式)。只要L非0,则还可以继续对新的L值执行双重循环。如果直到L=0,仍没有发现子串匹配,则表示A、B两串没有公共子串。

  • 第9题:

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

    • A、把数值型数据转换为字符串
    • B、返回由n个字符组成的字符串
    • C、从字符串中取出n个字符
    • D、从字符串中第n个字符的位置开始取子字符串

    正确答案:B

  • 第10题:

    C语言标准库函数""fgets(string,n,fp)""的功能是()。

    • A、从文件fp中读取长度为n的字符串存入指针string指向的内存
    • B、从文件fp中读取长度为n-1的字符串存入指针string指向的内存
    • C、从文件fp中读取n个字符串存入指针string指向的内存
    • D、从文件fp中读取长度不超过长度为n-1的字符串存入指针string指向的内存

    正确答案:D

  • 第11题:

    单选题
    标准函数fgets(s,n,f)的功能是()
    A

    从文件f中读取长度为n的字符串存人指针s所指的内存

    B

    从文件f中读取长度不超过n-1的字符串存人指针s所指的内存

    C

    从文件f中读取n个字符串存人指针s所指的内存

    D

    从文件f中读取长度为n-1的字符串存入指针s所指的内存


    正确答案: D
    解析: 暂无解析

  • 第12题:

    单选题
    标准库函数fgets(s,n,f)的功能是(  )。
    A

    从文件f中读取长度不超过n-1的字符串存入指针s所指的内存

    B

    从文件f中读取长度为n的字符串存入指针s所指的内存

    C

    从文件f中读取n个字符串存入指针s所指的内存

    D

    从文件f中读取n-1个字符串存入指针s所指的内存


    正确答案: D
    解析:
    fgets函数功能是从f所指文件中读入n-1个字符放入s为起始地址的空间内,并在尾端自动加一个结束标志“\0”。同时将读/写位置指针向前移动字符串长度个字节。在读出n-1个字符之前,如遇到了换行符或EOF,则读出结束,A项正确。B项中“读取长度为n”错误。C项与D项中“读取n/n-1个字符串”错误,读取的是n-1个字符。答案选择A选项。

  • 第13题:

    以下说法中错误的是

    A.strcpy(A,B)函数是将A字符串的内容复制到B字符串中

    B.strlen(cha*s)返回字符串S的长度,未尾的字符不计算在内

    C.char a[20]="string";中字符串长度为6

    D.strstr(S1,S2)函数在字符串S1中从左边开始查找字符串S2,若查找成功则返回S2在S1中首次出现的位置,否则返回NULL,如果S2为"",则返回S1。


    正确答案:A
    解析:strcpy( )函数的一般形式为:strcpy(to,from),该函数将from字符串中的内容复制到to字符串中,故A项错误。

  • 第14题:

    标准库函数fgets(s,n,file)的功能是( )。

    A.从文件file中读取长度为n的字符串存入字符数组s中

    B.从文件file中读取长度不超过n-1个字符的字符串放到字符数组s中

    C.从文件file中读取n个字符串存入字符数组s中

    D.从文件file中读取长度为n-1个字符的字符串存入字符数组s中


    正确答案:B
    解析: 字符串输入函数fgets()的调用形式为:fgets(s,n,fp)。fgets函数参数说明:“s”可以是一个字符数组名,也可以是指向字符串的指针;“n”为要读取的最多的字符个数;“fp”是指向该文件的文件型指针。
    fgets函数的功能:从fp所指向的文件中读取长度不超过n-1个字符的字符串,并将该字符串放到字符数组s中;读入字符串后会自动在字符串末尾加入“'\0'”结束符,表示字符串结束。

  • 第15题:

    C语言库函数fgets(str,n,fg)的功能是_______。

    A.从中指向的文件中读取长度n的字符串存入str指向的内存

    B.从fp指向的文件中读取长度不超过n-1的字符串存入str指向的内存

    C.从fp指向的文件中读取n个字符串存入str指向的内存

    D.从sb读取至多n个字符到文件fp


    正确答案:B
    解析:fgets函数的作用是从指定的文件读入一个字符串。fgets(str,n,fp);中的n为要求得到的字符的个数,但只从fp指向的文件输入n-1个字符,然后在最后加一个‘\0’字符,因此得到的字符串共有n个字符。

  • 第16题:

    标准库函数fgets(s,n,file)的功能是( )。A.从文件file中读取长度为n的字符串存入字符数s由 SXB

    标准库函数fgets(s,n,file)的功能是( )。

    A.从文件file中读取长度为n的字符串存入字符数s由

    B.从文件file中读取长度不超过n-1个字符的字符放到字符数组S中

    C.从文件file中读到n个字符串存入字符数组s中

    D.从文件file中读取长度为n-1个字符的字符串存字符数组S中


    正确答案:B
    本题考查fgets函数的使用调用形式:fgets(s,n,fp)。fgets函数参数说明:“S”可以是一个字符数组名,也可以是指向字符串的指针;“n”为要读取的最多的字符个数;“fp”是指向该文件型指针。fgets函数的功能是:从fp所指向的文件中读取长度不超过n-1个字符的字符串,并将该字符串放到字符数组S中,读入字符串后会自动在字符串末尾加入"\0"结束符,表示字符串结束。

  • 第17题:

    一个长度为10000的字符串,通过随机从a-z中抽取10000个字符组成。请用c#语言编写主要程序来实现。


    正确答案:
     

  • 第18题:

    有以下函数:

    该函数的功能是( )。

    A.tt-g s所指字符串的长度

    B.比较两个字符串的大小

    C.计算s所指字符串占用内存字节的个数

    D.将s所指字符串复制到字符串t中


    正确答案:A
    首先charss接受一个字符型数组的首地址并将这个首地址赋给另一个字符型指针char+t.while(}t++)不断循环直到}t为’、O’,再将t-1,这时字符指针t指向字符串的最后一个字符,又因为s指向字符数组的首地址即字符串的首地址所以retum(t—S)便是返回字符数组中字符串的长度。

  • 第19题:

    C语言库函数fgets(str,n,fp)的功能是______。

    A.从fp指向的文件中读取长度n的字符串存入str指向的内存

    B.从fp指向的文件中读取长度不超过n-1的字符串存入str指向的内存

    C.从fp指向的文件中读取n个字符串存入str指向的内存

    D.从str读取至多n个字符到文件fp


    正确答案:B
    解析:fgets函数的作用是从指定的文件读入一个字符串。fgets(str,n,fp);中的n为要求得到的字符的个数,但只从fp指向的文件输入n-1个字符,然后在最后加—个'\0'字符,因此得到的字符串共有n个字符。

  • 第20题:

    函数String(3,”str”)的功能是()

    • A、把数值型数据转换成字符串
    • B、返回有3个字符串组成的字符串
    • C、从字符串中第3个字符
    • D、从字符串中第3个字符的位置开始取字符串

    正确答案:B

  • 第21题:

    编一个程序,定义一个字符串变量,输入字符串,然后再输入一个字符,在字符串中查找该字符出现的次数。


    正确答案: stringa;
    charb;
    intd=0;
    Console.WriteLine("请输入一个字符串");
    a=Console.ReadLine();
    Console.WriteLine("请输入一个字符");
    b=char.Parse(Console.ReadLine());
    for(intc=0;c<=a.Length-1;c++)
    {
    if(a[c]==b)
    d++;
    }
    Console.WriteLine("字符{0}在字符串{1}中出现了{2}次",b,a,d);

  • 第22题:

    单选题
    有以下函数 int fun(char *s) {  char *t=s;  while(*t++);  return(t-s); } 该函数的功能是(  )。
    A

    计算s所指字符串占用内存字节的个数

    B

    比较两个字符串的大小

    C

    计算s所指字符串的长度

    D

    将s所指字符串复制到字符串t中


    正确答案: A
    解析:
    本题中,首先让t指向形参s,然后通过一个循环体为空的while循环,将t逐次后移,直到其所指内容为'\0'(字符串结束标志)。此时t仍然会被增1,所以从循环出来,t指向的是s所指字符串的结束标志的后一个字节。因此,返回的t-s是s所指字符串占用内存字节的个数,A项正确。而C项所说的长度并不包括字符串结束标志位,错误。答案选择A选项。

  • 第23题:

    单选题
    C语言标准库函数""fgets(string,n,fp)""的功能是()。
    A

    从文件fp中读取长度为n的字符串存入指针string指向的内存

    B

    从文件fp中读取长度为n-1的字符串存入指针string指向的内存

    C

    从文件fp中读取n个字符串存入指针string指向的内存

    D

    从文件fp中读取长度不超过长度为n-1的字符串存入指针string指向的内存


    正确答案: C
    解析: 暂无解析