学习C语言的第十三天06.29
0基础学习C语言
今天是学习C语言的第十三天
今天我学到了:
- 判定字符是否为大小写
- 小写转大写
- 计算字符长度
- strcpy 拷贝
- strcat 拷贝拼接
- strncpy 从头拷贝一定个数
- strncat 从头拷贝拼接一定个数
- strcmp 比较两个字符串的大小
- 自定义strcmp逻辑
我的编程:
#define_CRT_SECURE_NO_WARNINGS#include<stdio.h>#include<ctype.h>#include<string.h>intmain(){//判定字符是否为大小写charch='a';intret=islower(ch);if(ret!=0){printf("该数为小写字母\n");}else{printf("该数不是小写字母\n");}//小写转大写chararr[]="i like you";//首先先写一个语句char*p=arr;//想要改变这个整体,需要定义一个指针while(*p!='\0')//循环条件:还为遇到\0之前一直循环{charadd=*p;//指针不能直接使用且不在while的函数体里,所以需要定义if(islower(add))//判定add里的首个字符是否为小写,是则进行下一步{add=add-32;//小写与大写的ASCLL值差32,所以减去32会变大写}putchar(add);//如果是小写则进行上面那一步后打印,如果不是小写则直接打印p++;//首个检测完以后继续+1进行下一个,指导遇到\0}return0;}unsignedintqiu(constchar*arr)//无符号 整形{if(arr==0)//如果arr为空则返回0{return0;}unsignedintsum=0;//无符号 整形 sum初始值为0while(*arr!='\0')//表示识别arr里的元素还还没有遇到\0时继续循环{sum++;arr++;}returnsum;}intmain(){constchar*arr="abcdef";printf("%d\n",qiu(arr));charrr[]="abcde";intlen=sizeof(rr)/sizeof(rr[0]);//双引号包裹的字符串 "abcde",编译器会自动在最后追加一个看不见的结束字符 \0printf("%d\n",len-1);//'a' 'b' 'c' 'd' 'e' '\0'一共6个元素return0;}intmain(){//strcpy 拷贝chararr[]="hello";char*p=arr;strcpy(p,"i like you lucky");//把右边的拷贝覆盖到左边printf("%s\n",arr);//strcat 拷贝拼接charadd[20]={0};constchar*str="abcdef";char*p1=strcat(add,str);//把右边的拷贝拼接到左边printf("arr=%s\n",add);printf("p1=%s\n",p1);//strncpy 从头拷贝一定个数charbbb[10]={0};constchar*ccc="abcdef";char*p2=strncpy(bbb,ccc,4);//把右边的拷贝一定数量到左边printf("bbb=%s\n",bbb);printf("p2=%s\n",p2);//strncat 从头拷贝拼接一定个数charddd[30]="i like you ";charhhh[]="lucky";char*p3=strncat(ddd,hhh,5);//把右边的拷贝一定数量拼接到左边printf("ddd=%s\n",ddd);printf("ddd=%s\n",strncat(ddd,hhh,3));return0;}intmain(){//strcmp 比较两个字符串的大小charkkk[]="abcdef";charlll[]="abcde";intret=strcmp(kkk,lll);printf("%d\n",ret);if(ret>0){printf("kkk>lll");}elseif(ret==0){printf("kkk=lll");}else{printf("kkk<lll");}return0;}//自定义strcmp逻辑intbijiao(charkkk[],charlll[]){if(kkk==NULL&&lll!=NULL){return-1;}if(kkk!=NULL&&lll==NULL){return1;}if(kkk==NULL&&lll==NULL){return0;}while(*kkk==*lll){if(*kkk=='\0'){return0;}kkk++;lll++;}return*kkk-*lll;}intmain(){charkkk[]="abcdef";charlll[]="abcde";printf("%d\n",bijiao(kkk,lll));return0;}我的学习笔记:
