串的减法 输入字符串 s 和 t(串长不超过 80 个字符),将在字符串 s 中出现,但未在字符串 t 中出 现的字符组成一个新的字符串放在 u 中,u 中字符按原字符串中字符顺序排列,不去掉重复 字符,输出 u。 例如:当 s="112345",t="2467"时,u="1135"。 输入: 第一行为串 s 第二行为串 t 输出: 串...
//反序遍历2:【o(n) + o(n2)】 void reverse_traverse2(t_list *lst){ if(NULL == lst->head){ printf("list is empty!"); return; } t_node *pretail = lst->head; t_node *tail = back_node(lst); //找到末节点[o(n)] while(tail != lst->head){ //【o(n2)】 printf("revers...
以下函数creatlist用来建立一个带头节点的单向链表,新的结点总是插入在链表的末 尾。链表的头指针作为函数值返回。读入时字符以#表示输入结束(#不存入链表)。 struct node {char data; struct node *next; }; creatlist() {struct node *head,*s,*r;char ch; head=(struct node *)malloc(sizeof(struct ...
int s=3379 do{ while(s++%2+3%2)s++ ++k; }while(k>=0); 8.若输入字符串“ABC” ,下面程序段的输出为( )。C char c; while(cin>>c,c!=‟\n‟) cou<<c+2;} A.222 B.CDE C.676869 D.333 9.以下程序段的输出结果是( )。B A.45 B.457810 C.69 D.678910 二、阅读程序,写出...
C语言单向链表的经典算法 1.分割链表: 1.思路:创建新链表,小链表和大链表。如图代码如下 /** * Definition for singly-linked list... :思路:链表中不为val则尾插到新链表中。...:创建新的空链表,遍历原链表,将节点小的链表拿到新链表中尾插。...1.关于这个算法题的小故事:著名的Josephus问题 据说著名...
int fun(int a[ ][N],int n) { int i,j; for(i=0;i<N;i++) for(j=0;j<=i;j++) a[i][j]*=n; } 第九套 1.程序填空 给定程序中,函数 fun 的功能是将不带头节点的单向 链表结点数据域中的数据从小到大排序。即若原链表 结点数据域从头到尾的数据为:10、4、2、8、6,排 序后链...
链表的反序输出(实际上链表中的内容未改变) 思想:利用递归的思想,将链表遍历至最后一个链表,然后输出,在返回上一个节点输出。 //定义节点类型typedefstructNode{intdata;structNode*next;}Node;/*..创建链表略...*///逆序输出voidprint_backwards(Node*head){Node*curr=NULL;curr=head->next;if(curr==NULL)...
输入 a,b,c Y a>b N A max b max Y c>max N 输出 c 输出 max 第三章 3.5 字符常量和字符串常量有什么区别? 解:字符常量是一个字符,在程序中字符是用单引号括起来的。 字符串变量是有 0 个或若干个字符组合而成,在程序中字符串是 用双引号括起来,在存储时系统自动在字符串最后面加一个结束 ...
C语言-链表(单向链表、双向链表) 实现的功能如下: 初始化链表头插入节点的函数(链表任意位置插入,链表尾插入) 删除节点的函数(链表任意位置删除、链表尾删除)遍历链表,输出链表里的所有信息 #include #include...输出链接节点里的数据 list_print(list_head); return 0; } /* 函数功能: 初始化链表头--给链表...
5、程序填空题 while(s[i]) { if(i % 2 == 0 && s[i] % 2 == 0) i++; } t[j] = 0; 给定程序中已经建立一个带有头结点的单向链表,链表中的各结点数据域中的数据递增有 序链接,函数 fun 的功能是:把形参 x 的值放入一个新结点并插入到链表中,插入后各结点数据域的值仍保 持递增有序...