[求助】帮忙看一下关于字符数组的程序
// Note:Your choice is C++ IDE#include <iostream>
#include "stdio.h"
using namespace std;
int main()
{
char a[50],c[50],h[50];
int i,n=0,t=0,j=0,k=0,x=0,m=0;
cout<<"输入一组文法规则,中间用$隔开:"<<endl;
gets(a);
for(i=0;i<51 && a[i]!='\0';i++)
{if(a[i]='$')m++;
else
if((a[i]>=65) && (a[i]<=97))
{n++;}
else if((a[i]!='a')&&(a[i]<='z'))
{ t++;}
}
cout<<"文法规则个数为:"<<x;
cout<<"大写字母的个数为"<<n;
cout<<"小写字母的个数为:"<<m<<endl;
//输出大写字母和小写字母的过程开始
i=0;j=0;
while(( a[i]!='$') && (a[i]!='\0'))
{
c[j]=a[i];j++;i++;
}
i=0;j=0;
while(c[j]!='$')
{
if( (c[j]>='A') && (c[j]<='Z'))//1
while(c[i]!='\0')
{
h[k]=c[i];i++;
if (h[k]!=c[i])h[k]=c[i];//打印大写母
for(k=0;k<51;k++)
cout<<h[k];
j++;
}
i=0;j=0;k=0;
while(c[j]!='\0')
{
if( (c[j]>='a') && (c[j]<='z'))//1
{while(c[i]!='\0')
{
h[k]=c[i];
i++;k++;
if (h[k]!=c[i])
h[k]=c[i];
//小写字母
for(k=0;k<51;k++)cout<<h[k];
j++;
}
}
}
}
return 0;
}
[ 本帖最后由 小兰01 于 2009-9-9 16:05 编辑 ]