请补充main函数,该函数的功能是:从键盘输入两上字符串并分别保存在字符数组str1和str2中,用字符串str2替换字符串str1前面的所有字符,注意,str2的K度不大于str1,否则需要重新输入。 例如,如果输入strl;=“abced”,st

admin2010-09-14  23

问题 请补充main函数,该函数的功能是:从键盘输入两上字符串并分别保存在字符数组str1和str2中,用字符串str2替换字符串str1前面的所有字符,注意,str2的K度不大于str1,否则需要重新输入。
   例如,如果输入strl;=“abced”,str2=“fk”,则输出“fkced”。
   注意:部分源程序给出如下。
   请勿改动主函数main和其他函数中的任何内容,仪在 main函数的横线上填入所编写的若干表达式或语句。
   试题程序:
    #include<stdio.h>
   #include<string. h>
   main ()
    {
     char strl [ 81], str2 [ 81 ];
     char *pl=strl, *p2=str2;
     clrscr ();
     do
     {
        printf(" Input strl tn");
        gets (strl);
        printf(" Input str2 In");
        gets (str2);
     }while(【  】);
     while(【  】)
        *p1++=*p2++;
     printf(" Display strl \n");
     puts (【  】)
   }

选项

答案strlen(strl)<strlen(str2) *p2 str1

解析 第一空:如果字符串str2的长度大于字符串str1的长度,则要重新输入,即继续执行do-while循环。第二空:如果 p2所指的字符不为,仍’\0’,即还没有执行到str2的最后一个字符,则将这个字符赋给字符串str1的对应字符。第三空:函数puts()的功能是将一个字符串输出到终端设备,由程序可以知道,此时应该输出字符串str1。
转载请注明原文地址:https://jikaoti.com/ti/rIkiFFFM
0

最新回复(0)