xmC语言8

上一篇提到了数组,主要讲了int数组,今天就来讲一下

char数组

1.形式

都是 type name【number/ 】=

对于char数组来说,你可以一个一个的输入,也可以输入一个字符串让计算机自己一一对应。需要注意的是char数组最后有一个\0 ,你可以不表达但必须给他留出空间。(就比如下面两个【】至少是5) 这两种表达形式都是正确的

objectivec 复制代码
#include<stdio.h>
int main(){
int i=0,size;
scanf("%d",&size);
char text[size]={'a','b','l','e','\0'};
char text2[size]="able";
for(i=0;i<size;i++){
printf("%c",text[i]);}
printf("\n");
for(i=0;i<size;i++){
printf("%c",text2[i]);}
printf("\n");
return 0;}

2."size"可以预先定义

objectivec 复制代码
#include<stdio.h>
#define size 20

像这样你的size就提前定义了

3.输入与输出

当你规定了char数组想输入变量或者输出的时候,可以一个一个也可以一起(别忘记给\0一个空间如果你不输入\0的话)

objectivec 复制代码
#include<stdio.h>
#define size 20
int main(){
int i=0;
char text[size];
char text2[size];
scanf("%s",text);
for(i=0;i<size;i++){
scanf("%c",&text2[i]);}
printf("%s\n",text);
printf("%s\n",text2);
return 0;}

可以看到text和text2是不同的,对于text我们选择输入%s字符串,这个时候text是地址,所以不需要再添加地址符了;而text2中一个一个输入字符,所以需要只想这个字符的地址,也就是&text2【i】的表达。

4.小练习

objectivec 复制代码
#include<stdio.h>
#define size 30
int main(){
int i,length=0,count=0;
char text[size];
char label[]="Result";
scanf("%s",text);
for(i=0;text[i]!='\0';i++){
printf("index%d:%c\n",i,text[i]);
length++;
if(text[i]=='a'||text[i]=='A')
count++;}
printf("length=%d,number od 'a' or 'A'=%d",length,count);
return 0;}
相关推荐
yujunl10 分钟前
总结一下U9客开的成果
开发语言
独隅10 分钟前
KMP 全栈进化:Koog 框架打造纯 Kotlin AI Agent 实战效果
开发语言·人工智能·kotlin
AI服务老曹15 分钟前
视觉算法模型管理性能优化指南:多版本平滑升级、灰度与快速回滚实战
算法·性能优化
l12586524 分钟前
# RAG重排序实战:硅基流动bge-reranker-v2-m3在线API vs 本地CrossEncoder,一篇讲透两种方案
数据库·人工智能·python·深度学习·算法·机器学习·langchain
lhldsg24 分钟前
社区健身场地规划实战指南:从器材配置到智能化管理经验分享
java·开发语言·经验分享·小程序
创世宇图1 小时前
【AI量化交易实战】第06讲:小雅再升级——Talib指标库与K线形态量化
算法
机器学习之心1 小时前
CPO-SVR:用冠豪猪优化算法给支持向量回归机“自动调参“,一次预测多个指标
算法·回归·cpo-svr
SomeB1oody1 小时前
【RustyML入门】5.0. 模型评估
开发语言·后端·机器学习·rust·教程
Super 含1 小时前
Android 启动优化(三):Perfetto 实战——启动时间到底花在哪里?
jvm·算法
Evand J2 小时前
【MATLAB例程,PDR11】二维平面下的PDR(行人航位推算)步态检测与EKF融合定位,附代码的下载链接
开发语言·matlab·平面·pdr·行人导航·步态检测