当前位置: 首页 > 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.gsyq.cn/news/1612686.html

相关文章:

  • 无需专业CAD,轻量化CAD看图绘图工具就够了
  • 初代剧粉集体脱坑:短剧的精品化,真的错了吗?
  • 方寸感知战场:MEMS IMU 在坦克中的实战价值
  • PUBG罗技鼠标压枪宏:5分钟快速配置终极指南
  • 终极指南:如何用SuperPNG插件优化Photoshop PNG输出质量
  • 如何为嵌入式系统打造高效图像与字体资源生成器:LCD Image Converter深度解析
  • VMware NAT端口无法访问?这6种隐藏原因90%工程师从未检查过——含DHCP租期冲突、host-only适配器优先级、防火墙链顺序详解
  • 手把手教你用STM32F429+FreeRTOS+CycloneTCP做个开源SIP电话(附代码和避坑指南)
  • STC89C52单片机密码锁DIY:从Proteus仿真到面包板搭建的完整避坑指南
  • 文献梳理不用熬夜堆资料!okbiye 专属文献综述 AI,一站式产出合规学术述评
  • Windows风扇控制终极指南:告别噪音与过热的智能解决方案
  • MCP 7月大版本来了:无状态化、Breaking Changes、MCP Apps——你的Server要改吗?
  • Node.js应用XXE漏洞防护:从原理到实战的立体防御方案
  • 保姆级教程:用ESP8266-01和AT指令,5分钟搞定阿里云物联网平台温湿度数据上传
  • 鸿蒙跨平台框架2026年中总结:Flutter 发展进化之路
  • 哑铃图:数据对比的优雅之选合集 - 数据可视化(66)
  • Python+Appium自动化测试实战:头条视频自动播放脚本开发指南
  • 美团1.6万亿模型用国产芯片跑出来的,性能还超了GPT-5.5和Claude
  • SQL注入手工检测全流程:从原理到实战的深度解析
  • AI Agent平台架构设计:从核心原理到高可用实现与面试指南
  • 告别点灯!用ESP8266+Arduino IDE做个能远程控制的智能开关(附完整代码)
  • 告别Transformer卡顿?手把手带你用Vision Mamba跑通ImageNet分类(附代码)
  • 安达发|aps自动排单:为纺织行业数字化生产注入“增效魔法”
  • 从零实现Transformer:自注意力机制、多头注意力与位置编码详解
  • Node.js性能测试终极指南:Artillery与k6深度对比与实践
  • 告别路由器!用一根网线让ZYNQ7020开发板共享笔记本WiFi上网(Win10保姆级教程)
  • 【VMware NAT端口转发终极指南】:20年虚拟化专家亲授5步精准配置法,99%用户忽略的3个致命陷阱!
  • 保姆级教程:用ESP8266-01和AT指令,5分钟搞定阿里云物联网平台设备连接与数据收发
  • 告别Transformer卡顿?手把手带你用Vision Mamba跑通高分辨率图像分类(附代码)
  • Next.js项目Cypress自动化测试实战:从配置到CI/CD集成