| 
 | 
 
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册  
 
x
 
【问题描述】 
 
字符串复制。输入一个字符串t和一个正整数m,将字符串t中从第m个字符开始的全部字符复制到字符串s中,再输出字符串s。要求用字符指针定义并调用函数strmcpy(s,t,m),它的功能是将字符串t中从第m个字符开始的全部字符复制到字符串s中。 
 
【输入形式】 
 
首先打印提示“Input a string:";然后直接在冒号后面输入字符串,作为t的内容,字符串中可以包含空格;字符串以回车结束。 
 
    打印提示“Input an integer:”;然后直接在冒号后面输入一个正整数,代表m的值;回车。 
 
【输出形式】 
 
首先打印“Output is:”;紧跟后面输出字符串s中的内容;换行。 
 
【运行时的输入输出样例】(下划线部分表示输入) 
 
Input a string:happy new year 
 
Input an integer:7 
 
Output is:new year
 本帖最后由 jackz007 于 2020-11-1 20:56 编辑 
- #include <stdio.h>
 
  
- void strmcpy(char * s , char * t , int m)
 
 - {
 
 -         int k , n                                                               ;
 
 -         for(n = 0 ; s[n] ; n ++)                                                ;
 
 -         for(; n > 0 && s[n - 1] == '\n'; n --)                                  ;
 
 -         for(k = m - 1 ; k < n ; k ++ , t[k - m + 1] = '\0') t[k - m + 1] = s[k] ;
 
 - }
 
  
- int main(void)
 
 - {
 
 -         char s[256] , t[256]                                                    ;
 
 -         int m                                                                   ;
 
 -         printf("Input a string : ")                                             ;
 
 -         fgets(s , 255 , stdin)                                                  ;
 
 -         printf("Input an integer : ")                                           ;
 
 -         scanf("%d" , & m)                                                       ;
 
 -         strmcpy(s , t , m)                                                      ;
 
 -         printf("Out put is : %s\n" , t)                                         ;
 
 - }
 
  复制代码 
 
 
 |   
 
 
 
 |