niusouti.com

mystrlen函数的功能是计算str所指字符串的长度,并作为函数值返回。请填空。int mystrlen(char *str){ int i;for(i=0;【17】!= ′\0′;i++);return(i);}

题目

mystrlen函数的功能是计算str所指字符串的长度,并作为函数值返回。请填空。

int mystrlen(char *str)

{ int i;

for(i=0;【17】!= ′\0′;i++);

return(i);

}


相似考题
更多“mystrlen函数的功能是计算str所指字符串的长度,并作为函数值返回。请填空。 intmystrlen( ”相关问题
  • 第1题:

    以下函数fun的功能是返回str所指字符串中以形参c中字符开头的后续字符串的首地址,例如,str所指字符串为Hello!,c中的字符为e,则函数返回字符串ello!的首地址。若str所指字符串为空或不包含c中的字符,则函数返回NULL,请填空。char *fun(char *str,char c){ int n=0; char *p=str; if(p!=NULL) while(p[n]!=c&&p[n]!=’\0’) n++; if(p[n]==’\0’) return NULL; return();}


    正确答案:p+n
    在本题中,函数fun的功能是返回str所指字符串中以形参c中字符开头的后续字符串的首地址。
    在本题的程序中,fun函数带有两个形参,其中一个是指针str,它指向字符串的首地址,另一个是字符变量c。程序首先定义了一个整型变量n,从程序中可知,它是字符串str中参数c相对于首地址的偏移量,然后定义了一个指针变量p,指向字符串str的首地址,然后执行条件语句,如果字符串不为空,则执行循环语句,循环结束的条件是要么字符串结束,要么找到形参c中对应的字符。根据循环结束的条件我们可以判断,其非死循环,循环结束后,从程序中可以看出,判断循环结束的原因是否因为字符串结束而结束的,如果是,说明没找到形参c中对应的字符,返回NULL。
    如果不是,则说明是因为找到了形参c中对应的字符而结束循环的。根据题目要求,需要返回以形参c中字符开头的后续字符串的首地址,而这时以形参c中字符开头的后续字符串的首地址为p+n。

  • 第2题:

    下列给定程序中,函数fun的功能是:求ss所指字符串数组中长度最短的字符串所在的行下标,作为函数值返回,并把其串长放在形参n所指的变量中。ss所指字符串数组中共有M个字符串,且串长小于N。请在程序的下划线处填入正确的内容并将下划线删除,使程序得出正确的结果。


    正确答案:
    (1)M(2)<(3)k【考点分析】本题考查:for循环语句的循环条件;if语句条件表达式;return语句完成函数值的返回。【解题思路】填空1:题目指出88所指字符串数组中共有M个字符串,所以for循环语句循环条件是i<M。填空2:要求求长度最短的字符串,tn中存放的是已知字符串中长度最短的字符串的长度,这里将当前字符串长度与+nl七较,若小于tn,则将该长度值赋给+n,因此if语句的务件表达式为len<+n。填空3:将最短字符串的行下标作为函数值返回,变量-储存行下标的值。

  • 第3题:

    函数MyStrlen的功能是求pa标识的字符串长度,则划线处需要填写_______ int MyStrlen(char *pa){ int count=0; while(*pa != '0'){ ______++; ______++; } return ________; }

    A.pa count count

    B.count pa count

    C.count pa pa

    D.pa count pa


    pa count count;count pa count

  • 第4题:

    mystrlen函数的功能是计算str所指字符串的长度,并作为函数值返回,请填空。int mystrlen(char *str) { int i; for(i=0;;i++); return(i); }


    正确答案:*(str+i)!=‘\0’或*(str+i)
    在本题中,题目告诉我们,mystrlen函数的功能是计算str所指字符串的长度,并作为函数值返回。要求取一个字符串的长度,其中最关键的因素是如何判断字符串是否结束,然后就可以用循环逐个字符进行计算,获得最后的字符串长度。
    在程序中,函数mystrlen带了一个指针类型的形参变量str,该指针变量指向字符串的起始位置,通过该指针完成对字符串的计算,接着定义一个整型变量i作为循环变量,在循环结构for语句中,给出了循环变量的初始值和循环变量值改变的方式,但缺少循环结束的判断条件,这就是该题需要完成的空。通过前面的分析我们知道,循环用来求取字符串的长度,如果循环结束,字符串中所有的字符应该都被取,即字符串结束,由于字符串结束的标识符是‘\0’,因此,循环结束的判断条件应该为所取的字符为结束标识符,因此,循环结束的判断条件应该为*(str+i)!=‘\0’。另外,又由于字符结束标识符对应的值为0,即为假,因此,可以用来作为循环结束的条件,因此,本题的答案可以为*(str+i)!=‘\0’或*(str+i)。

  • 第5题:

    函数strcmp( )的功能是对两个字符串进行比较,当s所指字符串和t所指字符串相等时,返回值为0;

    当s所指字符串大于t所指字符串时,返回值大于0;当s所指字符串小于t所指字符串时,返回值小于

    0(功能等同于库函数strcmp( ) ),请填空。

    include <stdio.h>

    int strcmp ( chat * s, char * t)

    { while( * s && * t && * s=【 】

    { s++;t++; }

    return 【 】;

    }


    正确答案:* 或t[0] * s- *t 或 * s-t[0]或s[0]- * t或s[0]-t[0]
    * 或t[0] * s- *t 或 * s-t[0]或s[0]- * t或s[0]-t[0] 解析:对字符串比较的方法是依次对两字符串对应位置上的字符两两比较,当出现第一对不相同的字符时,即由这两个字符(ASCⅡ码值)决定所在串的大小。