C语言(数据结构,DEVFORGE学编程社区)

1、行程编码压缩算法

 1 #include<stdio.h>
 2 #include <string.h>
 3 #define N 100
 4 
 5 int main()
 6 {    
 7     char s[N] = "", t[N] = "", ch;
 8     gets(s);
 9     
10     int count = 0, index = 0;
11     for(int i=0; s[i]; ++i)
12     {    
13         if(!count)
14             ch = s[i];
15         count++;
16         if(ch!=s[i+1] || count==9){
17             t[index++] = count+'0';
18             t[index++] = ch;            
19             count=0;            
20         }
21     }
22     printf("%s",t); 
23     return 0;
24 }

2、创建与遍历职工链表

 1 #include <stdio.h>
 2 #include <malloc.h>
 3 #include <string.h>
 4 #define N 100
 5 
 6 typedef struct node EMPLOYEE,*LIST;
 7 struct node{ 
 8     int num;
 9     LIST next;
10 };
11 
12 void Insert(LIST head,int num)
13 {    
14     LIST p = head, s;
15     s = (LIST)malloc( sizeof(EMPLOYEE) );
16     s->num = num; //给p赋值
17     
18     while(p->next != NULL && s->num >= p->next->num)
19         p = p->next;
20     //连接 
21     s->next = p->next; //若s最大, p->next=NULL
22     p->next = s;  
23 }
24 
25 LIST Create()
26 {
27     //创建头结点
28     LIST head = (LIST)malloc(sizeof (EMPLOYEE));
29     head->next = NULL;
30     
31     int n,num;
32     scanf("%d",&n);
33     //插入n个职工号
34     while(n--)
35     {
36         scanf("%d",&num);
37         Insert(head,num);
38     }
39     return head;
40 }
41 
42 void Print(LIST head)
43 {    
44     LIST p = head;
45     while(p->next != NULL)
46     {
47         p = p->next;
48         printf("%d ",p->num);
49     }   
50 }
51 
52 int main()
53 {    
54     LIST head = Create();
55     Print(head);    
56     return 0;
57 }

3、毕业设计论文打印

猜你喜欢

转载自www.cnblogs.com/GoldenEllipsis/p/11649287.html