學習日誌作業二

2021-08-21 11:33:26 字數 3434 閱讀 7473

姓名:王晨晨          日期:7.15

#include

#define n 100

int main()

printf("pleaseinput:");

reverse();

return0;

int reverse()

charstr[n];  //目標字串

charstrtmp;  //首位置換時的交換變數

inti,j;  //迴圈變數

inttmp;  //用來記錄str長度

scanf("%s",&str);

for(i=0;i<=n;i++)  //查出str的長度

if(str[i]=='\0')

tmp=i-1;  //把長度給tmp

break;

for(j=0;j<=(tmp/2);j++)  //首末置換

strtmp=str[j];

str[j]=str[tmp-j];

str[tmp-j]=strtmp;

printf("%s\n",str);

while(1);

return0;

#include

#include

#define n 20

char *hex(char *s,int num,int n)

char tmp;

int i = 0;

while (num != 0)

s[i] = num % n;

if(s[i] <= 9)

s[i]=s[i]+'0';

else

switch(s[i])

case 10:s[i]='a';

break;

case 11:s[i]='b';

break;

case 12:s[i]='c';

break;

case 13:s[i]='d';

break;

case 14:s[i]='e';

break;

case 15:s[i]='f';

break;

default:break;

num = num / n;

i++;

s[i]='\0';

for(i=0;itmp = s[i];

s[i] = s[strlen(s)-i-1];

s[strlen(s)-i-1] = tmp;

return s;

int main()

int num;

int n;

char s[n];

printf("請輸入乙個整數和進製:\n");

scanf("%d %d",&num,&n);

printf("轉換後的字串為:\n%s\n",hex(s,num,n));

while(1);

return 0;

#include

#include

// 從str1中查詢str2的個數,並返回

int findchildcnt(char* str1, char* str2)

int len = strlen(str2);

int cnt = 0;

while (str1 = strstr(str1, str2)) // 如果查詢到,則執行迴圈,否則為空退出迴圈

cnt++; // 統計次數

str1 += len; // 加上偏移量,即移除str2

return cnt;

int main()

char str1[100], str2[100];

printf("輸入字串 :");

gets(str1);

printf("輸入子串 :");

gets(str2);

printf("出現次數:%d\n", findchildcnt(str1, str2));

while(1);

return 0;

#include

#include

#include

#define size 4

int main()

int i;

char t[20];

char *str[size]=;

printf("input:\n");

for(i=0;istr[i]=(char*)malloc(sizeof(char)*30);

if(null==str[i])

printf("malloc failure!\n");

return(-1);

scanf("%s",str[i]);

for(i=0;istrcpy(t,str[i]);

strcpy(str[i],str[size-i-1]);

strcpy(str[size-i-1],t);

printf("the last string:\n");

for(i=0;iprintf("%s ",str[i]);

while(1);

return 0;

#include

#include

int fun(char *ptr,char*head,char *tail)

char *temp;

while(*ptr != '\0')

if(strncmp(ptr,head,strlen(head)) == 0)

temp = ptr;

ptr+=strlen(head);

while(*ptr != '\0')

if(strncmp(ptr,tail,strlen(tail)) == 0)

*(ptr+strlen(tail)) = '\0';

printf("%s\n",temp);

return 0;

ptr++;

printf("find head not find tail!\n");

break;

else

ptr++;

return 0;

int main()

char src[100];

char head[20];

char tail[20];

printf("please input string:\n");

scanf("%s",src);

printf("please input head:\n");

scanf("%s",head);

printf("please input tail:\n");

scanf("%s",tail);

printf("the result:\n");

fun(src,head,tail);

while(1);

return 0;

while(1);

return 0;

學習日誌二

佟奇 寫於2018年9月11日 1.今日任務完成情況 最終完成200多 量,完成計畫。2.學習任務 基本儲備 先進後出 線性結構儲存方式 順序儲存 連續 鏈式儲存 不連續 棧 長度 棧頂指標 陣列下標 容量 起始位址 red hat終端c程式的編輯有關指令 a 插入 誤關,ls a,刪除 rm rf...

Python學習日誌(二)

今天學習了python的類的建立和使用,物件導向程式設計 多型 繼承等 與別的語言類似,但是因為python簡潔的語法特點,所以其語句更加簡單。在建立類時,有兩種語法,以person為例有 class person 01 name person 01 pass class person 02 obj...

Verilog學習日誌(二)

1 非阻塞賦值方法 如 b a 塊結束後才完成賦值操作 b的值並不是立刻改變 這是一種常用的賦值方法 2 阻塞賦值方法 如 b a 賦值語句執行完後塊才結束 b的值在賦值語句執行後立刻改變 可能產生意想不到的結果 1 塊內的語句是按順序執行的,上一條語句執行完才能執行下一條語句 2 每條語句的延遲世...