试写一个算法,识别依次读入的一个以@为结束符的字符序列是否为形如‘序列1&序列2’模式的字符序列。其中序列1和序列2中都不含字符‘&’,且序列2是序列1的逆序列。例如,‘a+b&b+a’是属该模式的字符序列,而‘1+3&3-1’则不是。BOOL Symmetry(char a[]){ int i=0; Stack s; InitStack(s); ElemType x; while(a[i]!='&' && a[i]){ ; i++; } if(a[i]) return FALSE; i++; while(a[i]){ Pop(s,x); if(x!=a[i]){ DestroyStack(s); return FALSE; } i++; } return TRUE;}[/i][/i][/i][/i][/i]
举一反三
- 1.试写一个算法,识别依次读入的一个以@为结束符的字符序列是否为形如‘序列 1 &序列 2 ’模式的字符序列。其中序列 1 和序列 2 中都不含字符‘&’,且序列 2 是序列 1 的逆序列。例如,‘a+b&b+a’是属该模式的字符序列,而‘1+3&3-1’则不是。BOOLSymmetry(char a[]){ int i=0; Stack s; InitStack(s); ElemType x; while(a[i]!='&' && a[i]){
- 1.试写一个算法,识别依次读入的一个以@为结束符的字符序列是否为形如‘序列 1 &序列 2 ’模式的字符序列。其中序列 1 和序列 2 中都不含字符‘&’,且序列 2 是序列 1 的逆序列。例如,‘a+b&b+a’是属该模式的字符序列,而‘1+3&3-1’则不是。BOOLSymmetry(char a[]){ int i=0; Stack s; InitStack(s); ElemType x; while(a[i]!='&' && a[i]){
- 试写一个算法,识别依次读入的一个以@为结束符的字符序列是否为形如‘序列 1 &序列 2 ’模式的字符序列。其中序列 1 和序列 2 中都不含字符‘&’,且序列 2 是序列 1 的逆序列。例如,‘a+b&b+a’是属该模式的字符序列,而‘1+3&3-1’则不是
- 下列语句序列执行后,i的值是()。ints=1,i=1;while(i<=4){s*=i;i++;}
- 以下能正确计算1*2*3*……*10的程序段是( )。 A: do{i=1; s=1;s*=i;i++;} while(i<;=10); B: do{i=1; s=0;s*=i;i++;} while(i<;=10); C: i=1; s=1;do{s*=i;i++;} while(i<;=10); D: i=1; s=0;do{s*=i;i++;} while(i<;=10);