目录
1.小乐乐与字符串
#include<stdio.h> int main() { char arr[8000] = {0}; scanf("%s",arr); long c = 0; long ch = 0; long chn = 0; char *p = arr; while(*p!='\0') { if(*p=='C') { c++; } else if(*p=='H') { ch+=c; } else if(*p=='N') { chn+=ch; } p++; } printf("%lld",chn); return 0; }
2.KiKi去重整数并排序
方法一:
#include<stdio.h> int main() { int n = 0; int arr[1001] = {0}; int tmp = 0; scanf("%d",&n); for(int i = 0;i<n;i++) { scanf("%d",&tmp); arr[tmp] = tmp; } for(int i = 0;i<1001;i++) { if(arr[i]!=0) { printf("%d ",arr[i]); } } return 0; }
方法二:
#include<stdio.h> void bubble_sort(int arr[], int n) { for (int i = 0; i < n - 1; i++) { for (int j = 0; j < n - i - 1; j++) { if (arr[j] > arr[j + 1]) { int temp = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = temp; } } } } int main() { int arr[1000] = { 0 }; int n = 0; scanf("%d", &n); int i = 0; for (i = 0; i < n; i++) { scanf("%d", &arr[i]); } bubble_sort(arr, n); for (i = 0; i < n - 1; i++) { if (arr[i] == arr[i + 1]) { int k = 0; for (k = i; k < n - 1; k++) { arr[k] = arr[k + 1]; } n--; i--; } } for (i = 0; i < n; i++) { printf("%d ", arr[i]); } return 0; }
35.KiKi学结构体和指针
#include<stdio.h> #include<malloc.h> struct Node { int num; struct Node* next; }; int main() { int n = 0; scanf("%d",&n); int i = 0; int m = 0; int d = 0;//要删除的元素 struct Node* list = NULL;//指向链表的指针 struct Node* tail=NULL;//指向链表尾部元素的指针 for(i = 0;i<n;i++) { scanf("%d",&m); struct Node*pn = (struct Node*)malloc(sizeof(struct Node)); pn->num = m; pn->next = NULL; if(list==NULL) { list = pn; tail = pn; } else { tail->next = pn; tail = pn; } } //接收要删除的元素 scanf("%d",&d); //删除列表中指定的元素 struct Node* cur = list; struct Node* prev = NULL; while(cur) { if(cur->num==d) { //删除 struct Node*pd = cur; if(cur==list) { list = list->next; cur = list; } else { prev->next = cur->next; cur = prev->next; } free(pd); n--; } else { prev = cur; cur = cur->next; } } // printf("%d\n",n); cur = list; while(cur) { printf("%d ",cur->num); cur = cur->next; } //释放单链表 cur = list; struct Node*del = NULL; while(cur) { del = cur; cur = cur->next; free(del); } list = NULL; return 0; }