当前位置: 首页 > news >正文

学习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;}

我的学习笔记:






http://www.jsqmd.com/news/1100723/

相关文章:

  • 怎么给电脑加密?分享这6款热门电脑加密软件,公认好用
  • 别再只用sleep了!C语言里usleep和nanosleep的实战用法与毫秒级休眠封装
  • 无需专业CAD,轻量化CAD看图绘图工具就够了
  • 保姆级教程:用Cache模拟器手把手理解多核CPU的数据一致性(附避坑指南)
  • 从零开始:用Luckfox Pico Pro Max开发板(RV1106)搭建一个简易网络摄像头
  • 初代剧粉集体脱坑:短剧的精品化,真的错了吗?
  • 从玩具项目到产品原型:我是如何用EasyVision快速搭建一个人脸打卡Demo的
  • 3分钟掌握G-Helper:华硕笔记本轻量控制工具的终极指南
  • 保姆级教程:用Ansys Zemax OpticStudio搞定单模光纤耦合效率分析(附避坑指南)
  • 方寸感知战场:MEMS IMU 在坦克中的实战价值
  • 保姆级教程:用EMQX和MQTTX从零搭建你的第一个物联网消息系统(Windows环境)
  • AI高薪神话褪去,普通人如何构建工程化能力应对行业新常态
  • PUBG罗技鼠标压枪宏:5分钟快速配置终极指南
  • 如何为嵌入式系统打造高效图像与字体资源生成器:LCD Image Converter深度解析
  • 别再盲目训练模型了!用PyTorch的EarlyStopping回调函数,5分钟搞定早停策略
  • 终极指南:如何用SuperPNG插件优化Photoshop PNG输出质量
  • Mi-Create终极指南:为小米穿戴设备创建个性化表盘的完整教程
  • VMware NAT端口无法访问?这6种隐藏原因90%工程师从未检查过——含DHCP租期冲突、host-only适配器优先级、防火墙链顺序详解
  • acme.sh:用 Shell 脚本搞定 SSL 证书申请和续期
  • 亮相 MWC2026,YunSDR 赋能NTN网络测试及科研原型落地
  • 告别单调地图!用ArcGIS Pro给要素弹窗加图片的3种方法全解析(附HTML排版技巧)
  • 霞鹜文楷:如何用一款开源字体改变你的数字阅读体验?
  • 手把手教你用ATGM332D-5N31模块DIY一个高精度GPS/北斗定位器(附STM32代码)
  • Codex:从AI代码补全到智能体开发平台的演进与实践指南
  • YOLOv10模型改进-卷积层改进-第14篇:YOLOv10改进策略【卷积层】| MobileNetV3深度可分离卷积
  • 手把手教你用STM32F429+FreeRTOS+CycloneTCP做个开源SIP电话(附代码和避坑指南)
  • STC89C52单片机密码锁DIY:从Proteus仿真到面包板搭建的完整避坑指南
  • iOS 崩溃日志分析与定位 从手动符号化到自动分析
  • 文献梳理不用熬夜堆资料!okbiye 专属文献综述 AI,一站式产出合规学术述评
  • 从YOLOv1到YOLOv13:核心原理、演进脉络与实战部署全解析