参考答案和解析
正确答案:strcpy(str1,”student”);
更多“完善程序,把字符串“student”复制到str1数组中,cha”相关问题
  • 第1题:

    下列程序的功能是将字符串“abcde”逆序打印出来。请填写空白处以完善程序。 Munction rev(str1)As String B = Mid(,1,1) If B =""Then rev ="" Else rev = rev(Mid(str1,2))+b End If End Function Private Sub Form_Click() old ="abcde" Print rev(old) End Sub


    正确答案:str1
    【解析】本程序使用“递归”的思想,每次递归取出一个字符放到字符串的后面,然后以后面的字符串作为函数参数进入下一次递归。b=Mid(______,1,1)语句的作用是取出本次递归中字符串的第一个字符,因此该空白处应填str1;rev=rev(Mid(str1,2))+b语句是将本次递归中字符串的第一个字符放到它的后面,因此该空白处应填b。递归是一种很重要的算法,在程序设计语言中广泛应用。递归的思想是指函数、过程、子程序在运行过程中直接或间接调用自身而产生的重入现象。简单地说就是自己调用自己。

  • 第2题:

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

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

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

    C.将串str2复制到串str1中后再将串sir3连接到串str1之后

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


    正确答案:C
    解析:题目中所给函数的功能是;先用函数strcpy把参数串str2复制到参数串str1中去,然后用函数strcat把参数串str3连接到经过修改后的参数串str1后,因此选项C正确。

  • 第3题:

    下列给定程序中,函数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';”,

  • 第4题:

    请补充函数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++”。

  • 第5题:

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

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

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

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

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


    正确答案:C

  • 第6题:

    编一个程序,输入一个字符串,用ToCharArray()方法把字符串中的内容拷贝到字符数组中,然后用foreach输出该字符数组。


    正确答案: strings;
    Console.WriteLine("请输入一个字符串");
    s=Console.ReadLine();
    char[]ch=newchar[s.Length];
    ch=s.ToCharArray();
    foreach(charcinch)
    {
    Console.WriteLine(c);
    }

  • 第7题:

    编一个程序,定义一个字符数组和一个字符串变量,给这个字符串变量输入一个字符串,然后用foreach语句把这个字符串拷贝到字符数组里,最后输出字符数组。


    正确答案: strings;
    Console.WriteLine("请输入一个字符串");
    s=Console.ReadLine();
    char[]ch=newchar[s.Length];
    intn=0;
    foreach(charcins)
    {
    ch[n]=c;
    n++;
    }
    foreach(charcinch)
    {
    Console.WriteLine(c);
    }

  • 第8题:

    将字符串2复制到字符数组1中去。charstr1[10],str2[]={“china”};strcpy();


    正确答案:(str1,str2)

  • 第9题:

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

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

    正确答案:A

  • 第10题:

    设已定义:char str1[10],str2[10]=”Fujian”;则能将字符串”Fujian”赋给数组str1的正确语句是()

    • A、str1=”Fujian”
    • B、strcpy(str1,str2)
    • C、strcpy(str2,str1)
    • D、str1=str2

    正确答案:B

  • 第11题:

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

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

    B

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

    C

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

    D

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


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

  • 第12题:

    问答题
    编一个程序,输入一个字符串,用ToCharArray()方法把字符串中的内容拷贝到字符数组中,然后用foreach输出该字符数组。

    正确答案: strings;
    Console.WriteLine("请输入一个字符串");
    s=Console.ReadLine();
    char[]ch=newchar[s.Length];
    ch=s.ToCharArray();
    foreach(charcinch)
    {
    Console.WriteLine(c);
    }
    解析: 暂无解析

  • 第13题:

    执行语句序列

    char str1[10]="ABCD",str2[10]="XYZxyz";

    for(int i=0;strl[i]=str2[i];i++);

    后,数组strl中的字符串是______。


    正确答案:XYZxyz
    XYZxyz 解析:注意for的循环体为空语句,其第二个表达式为一个赋值语句而不是一个逻辑表达式语句。因此,for循环的作用实际上是将str2的字符逐个赋值给str1中的对应位置。

  • 第14题:

    下面函数的功能是 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字符串。

  • 第15题:

    请补充main()函数,该函数的功能是:把一个二维字符

    数组每行字符串中最大的字符复制到字符数组s中。

    例如,如果arr[3]={″hoih″,″yufui″,″xgf″),则str=″oyx″。

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

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

    试题程序:


    正确答案:

    【1】p=arr【2】p[i]++【3】str[i]=ˊ\0ˊ
    【解析】由程序可知,变量P指向的二维数组的首地址,因此【1】处填“p=arr”;要找出二维数组中每一行的最大字符,就要检查每一行的每一个字符,因此【2】处填“p[i]++”;最后要为得到的结果字符串加上结束符,因此【3】处填“str[i]=ˊ\0ˊ”。

  • 第16题:

    函数调用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的容量。

  • 第17题:

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

    A.strcat(str1,str2);

    B.strcat(str2,str1);

    C.strcpy(str1,str2);

    D.strcmp(str1,str2);


    正确答案:C

  • 第18题:

    完善程序,把str2中前面3个字符复制到str1中去。charstr1[10],str2[]={“china”};()


    正确答案:strcpy(str1,str2,3)

  • 第19题:

    设有两字符串“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

  • 第20题:

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

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

    正确答案:A

  • 第21题:

    关于main方法中的arg[],下列哪个表述是正确且全面的()

    • A、main方法中的参数是字符串数组arg[],args是命令行参数,字符串数组arg[]的元素是在程序运行时从命令行输入的。
    • B、main方法中的参数是字符串数组arg[],args是命令行参数,字符串数组arg[]的元素是在程序编译时从命令行输入的。
    • C、main方法中的参数是字符串数组arg[],args是命令行参数,字符串数组arg[]的元素是在程序编译时直接写入txt文件的。
    • D、main方法中的参数是字符串数组arg[],args是命令行参数,字符串数组arg[]的元素可以在任何需要的时刻内输入。

    正确答案:A

  • 第22题:

    单选题
    以下涉及字符串数组、字符指针的程序段,不会产生编译错误的是(  )。
    A

    char*str,name[10]; str=Hello World;

    B

    char*str,name[10]; name=Hello World;

    C

    char str1[10]=prog.c, str2[10]; str2=str1;

    D

    char head_line[]; head_line=== == == == == == =;


    正确答案: B
    解析:
    将字符指针变量初始化为一个字符串有两种方式,一种通过赋值运算使一个字符指针指向一个字符串常量:char*str; str="Hello World",A选项正确。另一种是定义一个字符指针变量,并且初始化为一个字符串的首地址:char*str="Hello World"。字符指针变量与字符数组都可以用来实现字符串的存储和运算,但二者是有区别的:①数组名是一个地址常量,而字符指针变量是一个变量,所以不能给一个数组名赋值,如name = "Hello world"错误,B选项错误;②字符型的指针变量的值是可以改变的;③字符指针变量和字符数组在内存中的存储情形不同,数组指的是按照数组长度分配的若干存储空间,而指针只是一个存储字符串首地址的存储空间,所以相同类型指针可以相互赋值,而数组不能直接用“=”赋值,C选项错误。不能给数组名赋值.Head_line="== == == == == ="不合法,只有在数组初始化时可以直接赋值,如char head_line[]="==== == == == == ="合法,并且定义数组时必须指定数组长度,char head_line[]不合法,故D选项错误。答案选择A选项。

  • 第23题:

    单选题
    设已定义:char str1[10],str2[10]=”Fujian”;则能将字符串”Fujian”赋给数组str1的正确语句是()
    A

    str1=”Fujian”

    B

    strcpy(str1,str2)

    C

    strcpy(str2,str1)

    D

    str1=str2


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