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;}
相关推荐
一只爱学习的小鱼儿1 小时前
QT中3D的使用
开发语言·数据库·qt
青小俊1 小时前
【代码随想录c++刷题】-二分查找 移除元素 有序数组的平方 - 第一章 数组 part 01
c++·算法·leetcode
喵了几个咪1 小时前
Golang微服务框架Kratos实现Thrift服务
开发语言·微服务·golang
Laravel技术社区1 小时前
php 读取视频流(mp4视频文件),快速读取视频解决方案(案例及配置)
开发语言·php·音视频
ytttr8731 小时前
基于MATLAB实现晶体共晶凝固模拟
开发语言·算法·matlab
赖small强2 小时前
【Linux C/C++开发】第16章:多线程编程基础
linux·c语言·c++·多线程编程·进程和线程的本质区别
鄃鳕2 小时前
装饰器【Python】
开发语言·python·数码相机
Never_Satisfied2 小时前
在JavaScript / 微信小程序中,动态修改页面元素的方法
开发语言·javascript·微信小程序