编写函数 expand(s1, s2),将字符串 s1 中类似千 a•z 一类的速记符号 在字符串 s2 中扩展为等价的完整列表 abc…xyz。该函数可以处理大小写字母和数字,并可 以处理 a•b
#include
#include
void expend(char *,char *);
int main()
{
char a[]="-a-d-z00-9--------A-Z";
char b[200];
expend(a,b);
printf("%s",b);
return 0;
}
void expend(char a[] ,char b[]){
int i,j=0;
for(i=0;a[i]!='\0';i++)
{
if(a[i]=='-'&&i!=0) //这里判断是不是第一个如果是第一个的话前面就没有啥东西了 直接复制就ok了
{
if(isdigit(a[i-1])&&isdigit(a[i+1])) //这里判断是不是数字
{
for(int c=a[i-1]+1;c='A'&&a[i-1]<='Z')&& (a[i+1]>='A'&&a[i+1]<='Z')
也是可以的你还可以把这个三个判断写成一个判断
我感觉那样子阅读性太差了
*/
for(int c=a[i-1]+1;c