{ q=(NODE *)malloc(sizeof(NODE)); q->data=a[i]; q->next = NULL;if (h == NULL) h = p = q;
else { p->next = q; p = q; } }
return h; }
void outlist(NODE *h) { NODE *p; p=h;
if (p==NULL) printf(\"The list is NULL!\\n\"); else
{ printf(\"\\nHead \"); do { printf(\"->%d\p->data); p=p->next; }
while(p!=NULL); printf(\"->End\\n\");
} }
main()
{ NODE *head;
int a[N]={2,4,6,8,10}; head=creatlist(a);
printf(\"\\nThe original list:\\n\"); outlist(head); head=fun(head);
printf(\"\\nThe list after inverting :\\n\"); outlist(head); }
2.给定程序中,函数fun的功能是:在形参ss所指字符串数组中,删除所有串长超过k的字符串,函数返回所剩字符串的个数。ss所指字符串数组有N个字符串,且串长小于M。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。 不得增行或删行,也不得更改程序的结构! #include #include #define N 5 #define M 10int fun(char (*ss)[M], int k) { int i,j=0,len;
/**********found**********/ for(i=0; i/**********found**********/ strcpy(ss[j++], ss[i]); }return j; }
main() { char x[N][M]={\"Beijing\anjing\ int i,f;
printf(\"\\nThe original string\\n\\n\"); for(i=0;iprintf(\"The string witch length is less than or equal to 7 :\\n\"); for(i=0; i3.给定程序中,函数fun的功能是将不带头结点的单向链表逆置。即若原链表中从头至尾结点数据域依次为:2、4、6、8、10,逆置后,从头至尾结点数据域依次为:10、8、6、4、2。请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。 不得增行或删行,也不得更改程序的结构! #include 1
#include #define N 5 typedef struct node { int data;struct node *next; } NODE;
/**********found**********/ NODE * fun(NODE *h) { NODE *p, *q, *r; p = h;
if (p == NULL) return NULL; q = p->next; p->next = NULL; while (q) {
/**********found**********/ r = q-> NODE; q->next = p; p = q;
/**********found**********/ q = r ; }
return p; }
NODE *creatlist(int a[])
{ NODE *h,*p,*q; int i; h=NULL;
for(i=0; i{ q=(NODE *)malloc(sizeof(NODE)); q->data=a[i]; q->next = NULL;if (h == NULL) h = p = q;
else { p->next = q; p = q; } }
return h; }
void outlist(NODE *h) { NODE *p; p=h;
if (p==NULL) printf(\"The list is NULL!\\n\"); else
{ printf(\"\\nHead \"); do { printf(\"->%d\p->data); p=p->next; }
while(p!=NULL); printf(\"->End\\n\"); } }
main()
{ NODE *head;
int a[N]={2,4,6,8,10}; head=creatlist(a);
printf(\"\\nThe original list:\\n\"); outlist(head); head=fun(head);
printf(\"\\nThe list after inverting :\\n\"); outlist(head); }
4.给定程序中,函数fun的功能是:判断形参s所指字符串是否是\"回文\"(Palindrome),若是,函数返回值为1;不是,函数返回值为0。\"回文\"是正读和反读都一样的字符串(不区分大小写字母)。 例如,LEVEL和Level是\"回文\",而LEVLEV不是\"回文\"。
请在程序的下划线处填入正确的内容并把下划线删除, 使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。 不得增行或删行,也不得更改程序的结构! #include #include #include int fun(char *s) { char *lp,*rp;/**********found**********/ lp= s ;
rp=s+strlen(s)-1;
while((toupper(*lp)==toupper(*rp)) && (lp