回复 8楼 rjsp
请用自然语言描述一下你的算法和分析过程。而且当 a 的中间位置含有 0 的时候你的程序会出错,不过思路还是不错的
[ 本帖最后由 voidx 于 2011-4-18 13:35 编辑 ]
#include<stdio.h> #include<string.h> int main() { int k,n,i,j,lp; char a[10]="\0",rslt[10]="\0"; scanf("%s%d",a,&k); n=(int)strlen(a); if(k==n) { printf("0\n"); return 0; } lp=-1; for(j=0;j<n-k;j++) { lp++; rslt[j]=a[lp]; for(i=lp;i<k+j+1;i++) { if(rslt[j] > a[i]) { rslt[j]=a[i]; lp=i; } } } printf("%s\n",rslt); return 0; }