1、将一个字符串逆序2、将一个链表逆序3、计算一个字节里(byte)里面有多少bit被置14、搜索给定的字节(byte)5、在一个字符串中找到可能的最长的子字符串6、字符串转换为整数7、整数转换为字符串style="MARGIN: 0px; COLOR: rgb(102,102,102); LINE-HEIGHT: 150%" wrap="break-word"1、char *strconv(char *p){int i,length;char temp;length = strlen(p);for(i = 0;i < length/2;i++){temp = *(p + i);*(p + i) = *(p + length - 1 - i); *(p +length - 1 - i) = temp;}return p;}int main(){char src[100];char *p;scanf("%s",src);p = strconv(src);printf("%s\n",p);return 0;style="MARGIN: 0px; COLOR: rgb(102,102,102); LINE-HEIGHT: 150%" wrap="break-word"3、int cal(int data) //calculation the number of bit in one byte{int a;int count = 0;a = data % 100;while (a != 0){count += a % 2;a /= 2;}return count;int main(){int d,count;scanf("%d",&d);count = cal(d);printf("%d of one\n",count);return 0;}style="MARGIN: 0px; COLOR: rgb(102,102,102); LINE-HEIGHT: 150%" wrap="break-word"4、#include<stdio.h>#include<string.h>void findmax(char *p){int j = 0,max = 0;int count = 0;char record[200];char recordmax[200];for(int i = 0;;i++){if((*(p + i) == ' ') || (*(p + i) == '\0')) {if(count > max){max = count;record[j] = '\0';strcpy(recordmax,record); }count = 0;j = 0;}else{record[j] = *(p + i);count ++;j ++;}if(*(p + i) == '\0')break;}printf("%s\n",recordmax);}int main(){char str[]="zeng weidsfdsaf langd hah";printf("%s\n",str);findmax(str);return 0;}style="MARGIN: 0px; COLOR: rgb(102,102,102); LINE-HEIGHT: 150%" wrap="break-word"#include<stdio.h>#include<stdlib.h>#include<string.h>typedef struct shopping{char goods[100];struct shopping *next;}SHOP;SHOP *buildlink() //创建链表{char goods[100];SHOP *head,*p,*h;p = (SHOP *)malloc(sizeof(SHOP));head = p;head->next = NULL;printf("Input three goods:");for(int i = 0;i < 3;i++){scanf("%s",goods);p = (SHOP *)malloc(sizeof(SHOP)); strcpy(p->goods,goods);p->next = NULL;if(head->next == NULL){head->next = p;h = p;}else{h->next = p;h = h->next;}}return head;}void showlink(SHOP *head) //显示链表{SHOP *p;p = head->next;while(p != NULL){printf("%s ",p->goods);p = p->next;}printf("\n");}SHOP *revlink(SHOP *head) //反转链表{SHOP *p,*newp;p = head->next;head->next = NULL;while(p != NULL){newp = p;p = p->next;newp->next = head->next;head->next = newp;}return head;}int delnode(SHOP *head,char *str){//delete success return 1,else return 0 SHOP *q,*p = head;while(p->next != NULL){q = p;p = p->next;if(!strcmp(str,p->goods)) {q->next = p->next;free(p);//p = q->next;return 1;}}return 0;}int main(){SHOP *head;SHOP *newhead;head = buildlink();showlink(head);newhead = revlink(head); showlink(newhead);showlink(head);printf("Delete a node:"); char str[50];scanf("%s",str);int i;i = delnode(head,str);showlink(head);if(i == 1)printf("Delete successful!\n");return 0;}style="MARGIN: 0px; COLOR: rgb(102,102,102); LINE-HEIGHT: 150%" wrap="break-word"#include<stdio.h>#include<stdlib.h>#include<string.h>typedef struct shopping{char goods[100];struct shopping *next;}SHOP;SHOP *buildlink() //创建链表{char goods[100];SHOP *head,*p,*h;p = (SHOP *)malloc(sizeof(SHOP)); head = p;head->next = NULL;printf("Input three goods:");for(int i = 0;i < 3;i++){scanf("%s",goods);p = (SHOP *)malloc(sizeof(SHOP)); strcpy(p->goods,goods);p->next = NULL;if(head->next == NULL){head->next = p;h = p;}else{h->next = p;h = h->next;}}return head;}void showlink(SHOP *head) //显示链表{SHOP *p;p = head->next;while(p != NULL){printf("%s ",p->goods);p = p->next;}printf("\n");}SHOP *revlink(SHOP *head) //反转链表{SHOP *p,*newp;p = head->next;head->next = NULL;while(p != NULL){newp = p;p = p->next;newp->next = head->next;head->next = newp;}return head;}int delnode(SHOP *head,char *str){//delete success return 1,else return 0 SHOP *q,*p = head;while(p->next != NULL){q = p;p = p->next;if(!strcmp(str,p->goods)){q->next = p->next;free(p);//p = q->next; return 1;}}return 0;}int main(){SHOP *head;SHOP *newhead;head = buildlink();showlink(head);newhead = revlink(head);showlink(newhead);showlink(head);printf("Delete a node:");char str[50];scanf("%s",str);int i;i = delnode(head,str);showlink(head);if(i == 1)printf("Delete successful!\n");return 0;}style="MARGIN: 0px; COLOR: rgb(102,102,102); LINE-HEIGHT: 150%" wrap="break-word"#include "stdio.h"#include "stdlib.h"int myAtoi(char *s);void main(){int i;char *s=(char *)malloc(10*sizeof(char));if (s==NULL) {printf("fail to malloc s\n");return;}while(1) {scanf("%s",s);if ((*s)=='q') { break;}i = myAtoi(s);printf("%d\n",i); }}int myAtoi(char *s){int i=0;int flag=0;if (s==NULL)return 0;if (*s=='+'||*s=='-'){if (*s=='-') {flag=1;}s++;}while(*s!='\0' && *s>='0' && *s<='9') { i=(int)(*s)-'0'+i*10;s++;}if (flag)i=-i;return i;}。