从键盘上输入两个字符串,分别保存在变量str1,str2中.确定第二个字符串在第一个字符串中起始位置的函数是______。A.midB.stringC.instrD.left

题目

从键盘上输入两个字符串,分别保存在变量str1,str2中.确定第二个字符串在第一个字符串中起始位置的函数是______。

A.mid

B.string

C.instr

D.left


相似考题
参考答案和解析
#include<stdio.h> #include<string.h> #define N 81 void swap(char str1[], char str2[]) { char ch[N]; strcpy(ch,str1); strcpy(str1,str2); strcpy(str2,ch); } int main( ) { char ch1[N],ch2[N]; printf(“请输入一个字符串:”); scanf(“%s”,ch1); printf(“请输入另一个字符串:”); scanf(“%s”,ch2); swap(ch1,ch2); printf(“交换后的两个字符串分别为:\n”); printf(“%s\n%s\n”,ch1,ch2); return 0; }
更多“从键盘上输入两个字符串,分别保存在变量str1,str2中.确定第二个字符串在第一个字符串中起始位置的函数是______。”相关问题
  • 第1题:

    函数调用strcat(strcpy(str1,str2) ,str3) 的功能是( )。

    A.将字符串str1复制到字符串str2中后再连接到字符串str3之后

    B.将字符串str1连接到字符串str2之后再复制到字符串str3之后

    C.将字符串str2复制到字符串str1中后再将字符串str3连接到字符串str1之后

    D.将字符串str2连接到字符串str1之后再将字符串str1复制到字符串str3中


    正确答案:C
    解析:strcat(s1,s2) 是把s2字符串连接到s1字符串末尾,strcpy(s1,s2)是把s2字符串复制给s1字符串,要保证s1能容纳下连接或复制后的字符串。

  • 第2题:

    设有语句:a=InputBox("请输入数值:","输入示例","100")程序执行后,若从键盘上输入数值20并按回车键,则变量a的值是()。

    A、字符串"20"

    B、字符串"120"

    C、默认值100

    D、数值120


    参考答案:A

  • 第3题:

    请补充函数fun(),该函数的功能是:把从主函数中输入的字符串str2接在字符串str1的后面。

    例如:str1=“How do”,str2=“you do?”,结果输出: How do you do?

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

    请勿改动主函数main和其他函数中的任何内容,仅在函数fun的横线上填入所编写的若干表达式或语句。

    试题程序:

    include<stdio.h>

    include<conio.h>

    define N 40

    void fun(char*str1,char *str2)

    {

    int i=0;

    char *pl=str1;

    char*p2=str2;

    while(【 】)

    i++;

    for(;【 】;i++)

    *(p1+i)=【 】;

    *(p1+i)='\0';

    }

    main()

    {

    char str1[N],str2[N);

    clrscr();

    printf("*****Input the string str1 & Str2*****\n");

    printf("\nstr1:");

    gets(str1);

    printf("\nstr2:");

    gets(str2);

    printf("**The string str1 & str2**\n");

    puts(str1);

    puts(str2);

    fun(str1,str2);

    printf("*****The new string *****\n");

    puts(str1);

    }


    正确答案:*(p1+i) *p2 *p2++
    *(p1+i) *p2 *p2++ 解析:第一空:变量i用来记录字符串str1的长度,当指针指列宁符串str1结束标志符‘\0’时,while循环结束,变量 i停止累加。第二空:指针p2指向字符串str2,通过for循环将字符中str2按在str1后面,循环结束的条件是指针p2所指的字符是字符串结束标志符‘\0’。第三空:指针p2最初指向字符串str2的首字符,通过自加1,使指针p2依次向后移动,指向str2的各个字符,实现将宁符串str2接在str1后面的功能。

  • 第4题:

    下面函数的功能是 char*fun(char*strl,char*str2) { while((*strl)&&(*str2++=*strl++)); return str2;}

    A.求字符串的长度

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

    C.将字符串str1复制到字符串str2中

    D.将字符串str1接续到字符串str2中


    正确答案:C
    解析:while语句的一般形式为:while(表达式)语句;其中表达式是循环条件,语句为循环体,while语句的语义是:计算表达式的值,当值为真(非0)时,执行循环体语句。本题中逻辑与符号连接的表达式值为真,*str2++=*strl++语句是将strl的内容逐个复制到str2字符串。

  • 第5题:

    请补充函数proc(),该函数的功能是:把从主函数中输入的字符串str2接在字符串str1的后面。

    例如,str1=”I am a”,str2=”student”,结果输出:I am a student。

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

    请勿改动main()函数和其他函数中的任何内容,仅在函数proc()的横线上填入所编写的若干表达式或语句。

    试题程序:


    正确答案:

    【1】*(pl+i)【2】+p2【3】*p2++
    【解析】要将字符串str2接在字符串str后面,首先要得到字符串str1的长度,因此【1】填“*(p1+i)”。然后将字符串str2中的每一个字符接在字符串str1所有字符的后面,因此【2】填“*p2”;【3】填“*p2++”。

  • 第6题:

    函数调用strcat(strcpy(str1,str2),str3)的功能是( )。

    A.将字符串str1复制到字符串str2中后再连接到字符串str3之后

    B.将字符串str1连接到字符串str2之后再复制到字符串str3之后

    C.将字符串str2复制到字符串str1之后再将字符串str3连接到字符串str1之后

    D.将字符串str2连接到字符串str1之后再将字符串strl复制到字符串str3中


    正确答案:C
    strcat(s1,s2)函数的功能是把s2字符串连接到s1字符串末尾,strcpy(s1,s2)是把s2字符串复制到s1字符串,要保证sl的容量。

  • 第7题:

    函数调用“streat(strcpy(str1,str2),str3)”的功能是 ______。

    A.将字符串str1复制到字符串str2中后再连接到字符串str3之后

    B.将字符串str1连接到字符串str2中后再复制到字符串str3之后

    C.将字符串str2复制到字符串str1中后再将字符串str3连接到字符串str1之后

    D.将字符串str2连接到字符串str1之后再将字符串str1复制到字符串str3中


    正确答案:C

  • 第8题:

    下面几个字符串处理表达式中能用来把字符串str2复制到字符串str1后的是()。

    A.strcat(str1,str2);

    B.strcat(str2,str1);

    C.strcpy(str1,str2);

    D.strcmp(str1,str2);


    正确答案:C

  • 第9题:

    假如有字符串str1和字符串str2,下列选项不能利用于比较这两个字符串是否相等的是()。

    • A、string.Compare(str1,str2)
    • B、str1= =str2
    • C、string.Equals(str1,str2)
    • D、string.CompareTo(str1,str2)

    正确答案:D

  • 第10题:

    字符串处理函数gets()函数的作用是()

    • A、从标准输入设备键盘上,读取1个字符串,并将其存储到字符数组中去
    • B、从标准输入设备键盘上只能读取1个字符,并将其存储到字符变量中去
    • C、把字符数组中所存放的字符串,输出到标准输出设备中去
    • D、把字符变量中的单个字符,输出到标准输出设备中去

    正确答案:A

  • 第11题:

    以下哪个SQL函数可用于返回特定字符串在较大字符串中的起始位置?()

    • A、CONCAT
    • B、INSTR
    • C、LENGTH
    • D、SUBSTR

    正确答案:B

  • 第12题:

    单选题
    函数streat(strcpy(str1,str2),str3)的功能是()
    A

    将字符串strl复制到字符串str2中,再连接到str3之后

    B

    将字符串strl连接到str2之后,再复制到字符串str3之后

    C

    将字符串str2复制到字符串strl中,再将字符串str3连接到strl之后

    D

    将字符串str2连接到strl之后,再将字符串strl复制到str3中


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

  • 第13题:

    有如下语句:

    str1=InputBox(“输入 ”,” ”,”联系 ”)

    从键盘上输入字符串“学生”后,str1的值为( )

    A.“输入”

    B.“ ”

    C.“联系”

    D.“学生”


    正确答案:D

  • 第14题:

    阅读下列函数说明和C函数,将应填入(n)处的字句写在对应栏内。

    [函数2.1说明]

    函数strcpy的功能是将字符串str2的内容复制到字符申str1。

    [函数2.1]

    (1) strcpy (char *slr1, const char *str2)

    { char * temp;

    while( * str2!='\0') *cp++ =(2);

    (3)='\0';

    return str1;

    }

    [函数2.2说明]

    函数int strcmp(const char *str1, const char *str2)的功能是按字典序比较两个字符串str1和str2的大小。当str1<str2时返回-1,当str1>str2时返回1,否则返回0。

    [函数2.2]

    int strcmp(const char *str1, const char *str2)

    { while( *str1= =* str2) {

    if(* s1= =(4)) return 0;

    s1++;

    (5);

    }

    if( *str1<*str2) return -1;

    return 1;

    }


    正确答案:char * (2) * str2++ (3) * cp (4) ‘\0’ (5) s2++或 ++s2
    char * (2) * str2++ (3) * cp (4) ‘\0’ (5) s2++或 ++s2 解析:(1)根据函数说明,char *是函数strcpy的返回值类型;
    (2)while循环是字符串复制的关键,它将str2的字符一个个复制到cp;
    (3)字符复制完成后,应在字符串cp的末尾添加结束符;
    (4)~(5):while循环的功能是从字符串首开始逐个比较str1和str2的每一字符,如果循环一直执行到两字符串末尾,则说明两串相等,应返回0值。

  • 第15题:

    请补充main函数,该函数的功能是:从键盘输入一个字符串并保存在字符str1中,把字符串str1中下标为偶数的字符保存在字符串str2中并输出。例如,当str1=“cdefghij”,则 str2=“cegi”。

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

    请勿改动主函数main和其他函数中的任何内容,仅在函数fun()的横线上填入所编写的若干表达式或语句。

    试题程序:

    include<stdio.h>

    include<conio.h>

    define LEN 80

    main()

    {

    char str1[LEN],str2 [LEN];

    char *p1=str1,*p2=str2;

    int i=0,j=0;

    clrscr();

    printf("Enter the string:\n");

    scanf(【 】);

    printf("***the origial string***\n");

    while(*(p1+j))

    {

    printf("【 】",*(p1+j));

    j++;

    }

    for(i=0;i<j;i+=2)

    *p2++=*(str1+i);

    *p2='\0';

    printf("\nThe new string is:%s\n", 【 】 );

    }


    正确答案:"%s"str1 %c str2
    "%s",str1 %c str2 解析:第一空:本题考查对标准输入函数scanf()的调用格式,当输入字符串时,格式控制字符串为“%s”,题目要求输入的字符串保存在str1中,所以地址表列应为字符串的首地址,即为str1。第二空:本题考查对标准输出函数printf()的调用格式,当输出为字符型变量时,格式控制字符串为“%c”。第三空:题目要求将str1中下标为偶数的字符保存在字符串str2中并输出,所以ptintf()函数的输出表列是str2。

  • 第16题:

    下列给定程序中,函数proc的功能是:首先把b所指字符串中的字符按逆序存放,然后将str1所指字符串中的字符和Str2所指字符串中的字符,按排列的顺序交叉合并到str所指数组中,过长的剩余字符接在str所指数组的尾部。例如,当str1所指字符串中的内容为ABCDEFG,str2 所指字符串中的内容为1234时,str所指数组中的内容应该为A483C2D1EFG;而当str1所指字符串中的内容为1234,str2所指字符串中的内容为ABCEDFG时,str所指数组中的内容应该为1G2F31:4DCBA。 请修改程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。 试题程序: include<stdlib.h> include<conio.h> include<stdio。h> include<string.h> void proc(char*strl,char*str2,char*str) { int i,j;char ch; i=0;j=strleu(str2)-1; //****found**** while(i>j) { ch=str2[i];str2[i]=str2[j];str2[j]=ch; i++;j--; } while(*str1||*str2) { if(*str1){*str=*str1;str++;str1++;) if(*str2){*str=*str2;str++;str2++;) } //****found**** *str=0: } void main { char s1[100],s2[100],t[200]; system("CLS"); printf("\nEnter s1 string:"); scanf("%s",sl); printf("\nEnter s2 string:"); scanf("%s",s2); proc(s1,s2,t); printf("\nThe result is:%s\n",t); }


    正确答案:

    (1)错误:while(i>j)
    正确:while(i<j)
    (2)错误:*str=0;
    正确:*str='\0 ';
    【解析】由函数proc可知,变量i和j分别存放的是字符串str前面和后面第i个字符的位置,当i<j时,两个位置的字符交换。因此,“while(i>j)”应改为“while(i<j)”;交叉合并完成后,要为新的字符串添加结束符,因此,“*str= 0;”应改为“*str='\0';”,

  • 第17题:

    设有如下语句:str1=IntputBox("输入","","练习")从键盘上输入字符串“示例”后,str1的值是( )。

    A.输入

    C.练习

    D.示例


    正确答案:D

  • 第18题:

    有一字符串,包含那个字符。写一函数,将此字符串中从第m个字符开始的全部字符复制成为另一个字符串。

    include<iostream>

    using namespace std;

    void copystr(_______________)

    {

    int n=0;

    while(n<m-1)

    {

    n++;

    p1++;

    }

    while(*p1!=&39;\0&39;)

    {

    *p2=*p1;

    p1++;

    p2++;

    }

    *p2=&39;\0&39;;

    }

    void main()

    {

    int m;

    char str1[20],str2[20];

    cout<<"输入字符串1:";

    ______________;

    cout<<"从第m个字符串开始复制,请输入m:";

    cin>>m;

    if(strlen(str1)<m)

    cout<<"输入超过str1的长度"<<endl;

    else

    {

    copystr(str1,str2,m);

    cout<<"复制的字符串是:"<<str2<<endl;

    }

    }


    正确答案:
    char*p1,char*p2,intmgets(str1)

  • 第19题:

    函数调用“strcat(strcpy(strl,str2),str3)”的功能是( )

    A.将字符串strl复制到字符串str2中后再连接到字符串str3之后

    B.将字符串strl连接到字符串str2中后再复制到字符率str3之后

    C.将字符串str2复制到字符串strl中后再将字符串str3连接到字符串strl之后

    D.将字符串str2连接到字符率strl之后再将字符串strl复制到字符串str3中


    正确答案:C
    函数调用strcat(s1,s2)是将s2字符串复制连接到s1字符串之后,使s1字符串变得更长。函数调用strcpy(s1,s2)是将s2字符串复制到s1,使s1字符串的内容与s2字符串的内容相同。函数调用strcat(strcpy(strl,str2),str3)是先执行strcpy(strl,str2),然后再执行strcat(strl,str3),所以其功能是将字符串str2复制到字符串strl中,然后再将字符串str3复制连接到字符串strl之后。正确的选择是C。

  • 第20题:

    函数strcpy(str1,str2)是将字符串str2连接到字符串str1之后。


    正确答案:错误

  • 第21题:

    设有两字符串“Good”、“Morning”分别存放在字符数组str1[10]、str2[10]中,下面语句中能把“Morning”连接到“Good”之后的是()

    • A、strcpy(str1,str2)
    • B、strcpy(str1,"Morning")
    • C、strcat(str1,"Morning")
    • D、strcat("Good",str2)

    正确答案:C

  • 第22题:

    函数调用strcat(strcpy(str1,str2),str3)的功能是()

    • A、将字符串str2复制到字符串str1中后再将字符串str3连接到字符串str1之后
    • B、将字符串str1复制到字符串str2中后再连接到字符串str3之后
    • C、将字符串str1复制到字符串str2中后再复制到字符串str3之后
    • D、将字符串str2连接到字符串str1中后再将字符串str1复制到字符串str3中

    正确答案:A

  • 第23题:

    从键盘上输入两个字符串,分别保存在变量str1、str2中。确定第二个字符串在第一个字符串中起始位置的函数是()

    • A、Left
    • B、Mid
    • C、String
    • D、Instr

    正确答案:D

  • 第24题:

    单选题
    假如有字符串str1和字符串str2,下列选项不能利用于比较这两个字符串是否相等的是()。
    A

    string.Compare(str1,str2)

    B

    str1= =str2

    C

    string.Equals(str1,str2)

    D

    string.CompareTo(str1,str2)


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