L1-032. Left-pad

题目链接:https://www.patest.cn/contests/gplt/L1-032

思路:读入填充长度及字符,和字符串,记得判断字符串长度与填充长度的大小,n<length,则是右对齐剪切字符串,否则填充字符c

注意点:

(1)注意长度要足够大,否则会出错,

(2)注意用gets()读取字符串时,应先加getchar()读入换行符,不然会错误。

 1 #include<stdio.h>
 2  #include<string.h>
 3  int main()
 4  {
 5      int n,i;
 6      char c,str[1000000],sout[1000000];
 7      scanf("%d %c",&n,&c);
 8      getchar();
 9      gets(str);
10      if(strlen(str)>n)        //字符串长度大于n
11     {
12         for(i=0;i<n;i++)sout[i]=str[strlen(str)-n+i];
13     }
14     else
15     {
16         for(i=0;i<n-strlen(str);i++)sout[i]=c;
17         strcat(sout,str);
18     } 
19     puts(sout);
20     return 0;
21  }
22  

 

posted @ 2018-01-19 11:12  爱你的笑  阅读(518)  评论(0编辑  收藏  举报