Exercises 3-3

来源:互联网 发布:python游戏服务器开发 编辑:程序博客网 时间:2024/04/30 07:59

练习3-3:编写函数expand(s1, s2),将字符串s1中类似于a-z一类的速记符号在字符串s2中扩展为等价的完整列表abc...xyz。该函数可以处理大小写字母和数字,并可以处理a-b-c、a-z0-9与-a-z等类似的情况。作为前导和尾随的-字符原样打印。

/*编程思路:字符串s1中,如果s1[i]比s1[i+2]小而且s1[s1+1]为-,则将值s1[i]到s1[s1+2]之间的 值复制到s2中,否则直接复制s1[i]到到s2 */#include <stdio.h>void expand(char s1[],char s2[]);int main(int argc, char *argv[]){char s1[500]="-a-z\nA-Z-0-9";char s2[1000];expand(s1,s2);printf("%s\n",s2);return 0;}void expand(char s1[],char s2[]){char c;int i,j;j=0;for(i=0;s1[i]!='\0';i++){if(s1[i]<s1[i+2]&&s1[i+1]=='-'){c=s1[i];while(c<=s1[i+2]){ s2[j++]=c; c++;}i=i+2;}else{s2[j++]=s1[i];}}s2[j]='\0';}

程序执行效果:



原创粉丝点击