阅读以下说明,回答问题1~5,将解答填入对应的解答栏内。 [说明] 若s和t是用单链表存储的两个串,设
阅读以下说明,回答问题1~5,将解答填入对应的解答栏内。[说明] 若s和t是用单链表存储的两个串,设计一个函数将s串中首次与串t匹配的字串逆置。linkstring * invert - substring (s, t)linkstring * s, * t;{linkstring *prior, *p, *t1, *r, *q, *u;prior =s;p=s;t1 =t;if ((1) ) printf ("error\n") ;else{while { p ! = NULL && t1! = NULL){if (p- >data = = t1 - >data){p = p- >link;t1 = t1- >link;}else{(2)p = prior - > link;}t1 = t- >link;}if (t1 ! : NULL) printf ("cannot find");else{(3)r = q- >link;q- >link = p;while (r ! = p){u = r- >link;(4)q=r;r = u;}(5)}}}
[说明] 若s和t是用单链表存储的两个串,设计一个函数将s串中首次与串t匹配的字串逆置。linkstring * invert - substring (s, t)linkstring * s, * t;{linkstring *prior, *p, *t1, *r, *q, *u;prior =s;p=s;t1 =t;if ((1) ) printf ("error\n") ;else{while { p ! = NULL && t1! = NULL){if (p- >data = = t1 - >data){p = p- >link;t1 = t1- >link;}else{(2)p = prior - > link;}t1 = t- >link;}if (t1 ! : NULL) printf ("cannot find");else{(3)r = q- >link;q- >link = p;while (r ! = p){u = r- >link;(4)q=r;r = u;}(5)}}}
linkstring * invert - substring (s, t)linkstring * s, * t;{linkstring *prior, *p, *t1, *r, *q, *u;prior =s;p=s;t1 =t;if ((1) ) printf ("error\n") ;else{while { p ! = NULL && t1! = NULL){if (p- >data = = t1 - >data){p = p- >link;t1 = t1- >link;}else{(2)p = prior - > link;}t1 = t- >link;}if (t1 ! : NULL) printf ("cannot find");else{(3)r = q- >link;q- >link = p;while (r ! = p){u = r- >link;(4)q=r;r = u;}(5)}}}
linkstring * s, * t;{linkstring *prior, *p, *t1, *r, *q, *u;prior =s;p=s;t1 =t;if ((1) ) printf ("error\n") ;else{while { p ! = NULL && t1! = NULL){if (p- >data = = t1 - >data){p = p- >link;t1 = t1- >link;}else{(2)p = prior - > link;}t1 = t- >link;}if (t1 ! : NULL) printf ("cannot find");else{(3)r = q- >link;q- >link = p;while (r ! = p){u = r- >link;(4)q=r;r = u;}(5)}}}
{linkstring *prior, *p, *t1, *r, *q, *u;prior =s;p=s;t1 =t;if ((1) ) printf ("error\n") ;else{while { p ! = NULL && t1! = NULL){if (p- >data = = t1 - >data){p = p- >link;t1 = t1- >link;}else{(2)p = prior - > link;}t1 = t- >link;}if (t1 ! : NULL) printf ("cannot find");else{(3)r = q- >link;q- >link = p;while (r ! = p){u = r- >link;(4)q=r;r = u;}(5)}}}
linkstring *prior, *p, *t1, *r, *q, *u;prior =s;p=s;t1 =t;if ((1) ) printf ("error\n") ;else{while { p ! = NULL && t1! = NULL){if (p- >data = = t1 - >data){p = p- >link;t1 = t1- >link;}else{(2)p = prior - > link;}t1 = t- >link;}if (t1 ! : NULL) printf ("cannot find");else{(3)r = q- >link;q- >link = p;while (r ! = p){u = r- >link;(4)q=r;r = u;}(5)}}}
prior =s;p=s;t1 =t;if ((1) ) printf ("error\n") ;else{while { p ! = NULL && t1! = NULL){if (p- >data = = t1 - >data){p = p- >link;t1 = t1- >link;}else{(2)p = prior - > link;}t1 = t- >link;}if (t1 ! : NULL) printf ("cannot find");else{(3)r = q- >link;q- >link = p;while (r ! = p){u = r- >link;(4)q=r;r = u;}(5)}}}
p=s;t1 =t;if ((1) ) printf ("error\n") ;else{while { p ! = NULL && t1! = NULL){if (p- >data = = t1 - >data){p = p- >link;t1 = t1- >link;}else{(2)p = prior - > link;}t1 = t- >link;}if (t1 ! : NULL) printf ("cannot find");else{(3)r = q- >link;q- >link = p;while (r ! = p){u = r- >link;(4)q=r;r = u;}(5)}}}
t1 =t;if ((1) ) printf ("error\n") ;else{while { p ! = NULL && t1! = NULL){if (p- >data = = t1 - >data){p = p- >link;t1 = t1- >link;}else{(2)p = prior - > link;}t1 = t- >link;}if (t1 ! : NULL) printf ("cannot find");else{(3)r = q- >link;q- >link = p;while (r ! = p){u = r- >link;(4)q=r;r = u;}(5)}}}
if ((1) ) printf ("error\n") ;else{while { p ! = NULL && t1! = NULL){if (p- >data = = t1 - >data){p = p- >link;t1 = t1- >link;}else{(2)p = prior - > link;}t1 = t- >link;}if (t1 ! : NULL) printf ("cannot find");else{(3)r = q- >link;q- >link = p;while (r ! = p){u = r- >link;(4)q=r;r = u;}(5)}}}
else{while { p ! = NULL && t1! = NULL){if (p- >data = = t1 - >data){p = p- >link;t1 = t1- >link;}else{(2)p = prior - > link;}t1 = t- >link;}if (t1 ! : NULL) printf ("cannot find");else{(3)r = q- >link;q- >link = p;while (r ! = p){u = r- >link;(4)q=r;r = u;}(5)}}}
{while { p ! = NULL && t1! = NULL){if (p- >data = = t1 - >data){p = p- >link;t1 = t1- >link;}else{(2)p = prior - > link;}t1 = t- >link;}if (t1 ! : NULL) printf ("cannot find");else{(3)r = q- >link;q- >link = p;while (r ! = p){u = r- >link;(4)q=r;r = u;}(5)}}}
while { p ! = NULL && t1! = NULL){if (p- >data = = t1 - >data){p = p- >link;t1 = t1- >link;}else{(2)p = prior - > link;}t1 = t- >link;}if (t1 ! : NULL) printf ("cannot find");else{(3)r = q- >link;q- >link = p;while (r ! = p){u = r- >link;(4)q=r;r = u;}(5)}}}
{if (p- >data = = t1 - >data){p = p- >link;t1 = t1- >link;}else{(2)p = prior - > link;}t1 = t- >link;}if (t1 ! : NULL) printf ("cannot find");else{(3)r = q- >link;q- >link = p;while (r ! = p){u = r- >link;(4)q=r;r = u;}(5)}}}
if (p- >data = = t1 - >data){p = p- >link;t1 = t1- >link;}else{(2)p = prior - > link;}t1 = t- >link;}if (t1 ! : NULL) printf ("cannot find");else{(3)r = q- >link;q- >link = p;while (r ! = p){u = r- >link;(4)q=r;r = u;}(5)}}}
{p = p- >link;t1 = t1- >link;}else{(2)p = prior - > link;}t1 = t- >link;}if (t1 ! : NULL) printf ("cannot find");else{(3)r = q- >link;q- >link = p;while (r ! = p){u = r- >link;(4)q=r;r = u;}(5)}}}
p = p- >link;t1 = t1- >link;}else{(2)p = prior - > link;}t1 = t- >link;}if (t1 ! : NULL) printf ("cannot find");else{(3)r = q- >link;q- >link = p;while (r ! = p){u = r- >link;(4)q=r;r = u;}(5)}}}
t1 = t1- >link;}else{(2)p = prior - > link;}t1 = t- >link;}if (t1 ! : NULL) printf ("cannot find");else{(3)r = q- >link;q- >link = p;while (r ! = p){u = r- >link;(4)q=r;r = u;}(5)}}}
}else{(2)p = prior - > link;}t1 = t- >link;}if (t1 ! : NULL) printf ("cannot find");else{(3)r = q- >link;q- >link = p;while (r ! = p){u = r- >link;(4)q=r;r = u;}(5)}}}
else{(2)p = prior - > link;}t1 = t- >link;}if (t1 ! : NULL) printf ("cannot find");else{(3)r = q- >link;q- >link = p;while (r ! = p){u = r- >link;(4)q=r;r = u;}(5)}}}
{(2)p = prior - > link;}t1 = t- >link;}if (t1 ! : NULL) printf ("cannot find");else{(3)r = q- >link;q- >link = p;while (r ! = p){u = r- >link;(4)q=r;r = u;}(5)}}}
(2)p = prior - > link;}t1 = t- >link;}if (t1 ! : NULL) printf ("cannot find");else{(3)r = q- >link;q- >link = p;while (r ! = p){u = r- >link;(4)q=r;r = u;}(5)}}}
p = prior - > link;}t1 = t- >link;}if (t1 ! : NULL) printf ("cannot find");else{(3)r = q- >link;q- >link = p;while (r ! = p){u = r- >link;(4)q=r;r = u;}(5)}}}
}t1 = t- >link;}if (t1 ! : NULL) printf ("cannot find");else{(3)r = q- >link;q- >link = p;while (r ! = p){u = r- >link;(4)q=r;r = u;}(5)}}}
t1 = t- >link;}if (t1 ! : NULL) printf ("cannot find");else{(3)r = q- >link;q- >link = p;while (r ! = p){u = r- >link;(4)q=r;r = u;}(5)}}}
}if (t1 ! : NULL) printf ("cannot find");else{(3)r = q- >link;q- >link = p;while (r ! = p){u = r- >link;(4)q=r;r = u;}(5)}}}
if (t1 ! : NULL) printf ("cannot find");else{(3)r = q- >link;q- >link = p;while (r ! = p){u = r- >link;(4)q=r;r = u;}(5)}}}
else{(3)r = q- >link;q- >link = p;while (r ! = p){u = r- >link;(4)q=r;r = u;}(5)}}}
{(3)r = q- >link;q- >link = p;while (r ! = p){u = r- >link;(4)q=r;r = u;}(5)}}}
(3)r = q- >link;q- >link = p;while (r ! = p){u = r- >link;(4)q=r;r = u;}(5)}}}
r = q- >link;q- >link = p;while (r ! = p){u = r- >link;(4)q=r;r = u;}(5)}}}
q- >link = p;while (r ! = p){u = r- >link;(4)q=r;r = u;}(5)}}}
while (r ! = p){u = r- >link;(4)q=r;r = u;}(5)}}}
{u = r- >link;(4)q=r;r = u;}(5)}}}
u = r- >link;(4)q=r;r = u;}(5)}}}
(4)q=r;r = u;}(5)}}}
q=r;r = u;}(5)}}}
r = u;}(5)}}}
}(5)}}}
(5)}}}
}}}
}}
}
点击查看答案
以下程序的输出结果是()。
#include "stdio.h"
char cchar(char ch)
{
if (ch>='A' && ch<='Z') ch=ch-'A'+'a';
return ch;
}
main()
{
char s[]="ABC+abc=defDEF", *p=s;
while(*p)
{
*p=cchar(*p);
p++;
}
printf("%s\n",s);
}
A . abc+ABC=DEFdef B . abcaABCDEFdefC . abc+abc=defdefD . abcabcdefdef
点击查看答案