- 3
- 0
- 约6.34千字
- 约 47页
- 2022-05-13 发布于四川
- 举报
第 11 讲
字符串
电子科技大学成都学院《C语言程序设计》
上一节内容回顾
int x[]={4,3,2,1},q;
int *p=x[1];
q=(*--p)++;
q的值为多少,*p的值为多少?
q=4,
x[0]=5,
*p=5
上一节内容回顾
int a[4][4];
int (*p)[4]=a;for(i=0;i2;i++) for(j=0;j4;j++) scanf(%d,(a+i)+j);
以下均是合法的地址:
*(a+i)+j
a[i][j]
a[i]+j
*(p+i)+j
上一节内容回顾
下面程序的输出结果是?
int a[3]={1,2,3};
int b[3];
int *p,*q,i;
for(p=a+2,q=b;p=a;p--,q++)
q=p;
for(i=0;i3;i++)
printf(“%d ”,*q++);
*q=*p;
q=b;
字符串
本讲
要点
字符数组
指向字符串的指针变量
字符串处理函数
程序举例
字符串
字符
字符常量
用单引号括起来的字符在ASCII表中对应的整数值
‘z’ 代表的是字符z在ASCII表中对应的整数值122
字符变量
实际上是单字节整型变量,一般存储一个整数表示其在ASCII表中对应的字符
字符串
字符串
作为一个整体的字符序列
可以包含 字母, 数字 和 特殊字符 (*, /, $等)
字符串常量
用双引号括起来
例如:Hello
字符串
在C语言中,字符串是以空字符( ’\0’)结束的字符数组
字符串与字符数组有区别
字符串必须以’\0’结尾
字符串从字符数组的第一个元素开始,到第一个’\0’结束
字符串的长度和内容都不包括’\0’
char name[20];
B
i
l
l
G
a
t
e
s
\0
?
?
?
?
?
?
?
?
?
字符串
给字符数组的全部元素赋初值
char a[5]={‘C’,’h’,’i’,’n’,’a’};
a[0]
a[1]
a[2]
a[3]
a[4]
‘C’
‘h’
‘i’
‘n’
‘a’
这个字符数组没有以‘\0’结尾,不是字符串
字符串
给字符数组的部分元素赋初值
char a[5]={‘C’,’h’,’i’};
a[0]
a[1]
a[2]
a[3]
a[4]
‘C’
‘h’
‘i’
‘\0’
‘\0’
缺省的初值为 ‘\0’
字符串
给全部元素赋初值时,可以不指定长度
char a[ ]={‘C’,’h’,’i’,’n’,’a’};
a[0]
a[1]
a[2]
a[3]
a[4]
‘C’
‘h’
‘i’
‘n’
‘a’
依然不是字符串
字符串
char a[ ] = “China”;
用字符串常量给字符数组赋初值
也可以不指定数组长度
char a[6] = “China”;
a[0]
a[1]
a[2]
a[3]
a[4]
a[5]
‘C’
‘h’
‘i’
‘n’
‘a’
‘\0’
来自字符串常量的结束字符 ‘\0’ 。
字符串
字符串的输入输出有以下方式:
逐个字符输入输出
%c
作为整体一次输入输出
%s
用字符串输入输出函数
gets
puts
字符串
用%c逐个字符的输入输出
#include stdio.h
#define MAX 5
void main() {
int n;
char c[MAX];
for (n=0;nMAX;n++)
scanf(%c,c[n]);
for (n=0;nMAX;n++)
printf(%c,c[n]);
}
字符串
用%s实现字符串作为整体一次性的输入输出
#include stdio.h
#define MAX 5
void main() {
char c[MAX];
scanf(%s, c);
printf(Show c:\n);
printf(%s, c);
}
输入和输出项都是数组名
在输入时,空格、制表符和换行符都被作为字符串的分隔符,不被读入
在输出时,一旦遇到 ‘\0’ 就结束
字符串
用标准库提供的输入输出函数
#include stdio.h
#define MAX 5
void main() {
char c[MAX];
gets(c);
printf(Show c:\n);
puts(c);
}
用gets()输入时,换行符被作为数据的分隔符,不被读入
但是,空格和制表符可以被读入
puts()在输出字符串后自动换行,即加一个’\n’
字符串
例. 输入一行字符,单词之间用空格隔开,统计其中有多少个单词
I
a
m
f
r
o
m
…
\0
算法:
您可能关注的文档
- 《新目标大学英语2》课件-Unit 5.pptx
- 《中国近现代史纲要》课件-第1讲 绪论.ppt
- 《中国近现代史纲要》课件-第1章 反对外国侵略战争.pdf
- 《中国近现代史纲要》课件-第2-3章 对国家出路的早期探索.pdf
- 《中国近现代史纲要》课件-第3讲 李鸿章与洋务运动.ppt
- 《中国近现代史纲要》课件-第4讲 资产阶级的维新运动.ppt
- 《中国近现代史纲要》课件-第4章 开天辟地大事变.pdf
- 《中国近现代史纲要》课件-第5讲 辛亥革命.ppt
- 《中国近现代史纲要》课件-第5章 中国革命的新道路.pdf
- 《中国近现代史纲要》课件-第6讲 新文化运动.ppt
- 河北盐山中学等校2025-2026学年上学期高三一模化学试卷(含解析).docx
- 河北正定中学2025-2026学年高一上学期期末考试物理试卷(含解析).docx
- 河北张家口市怀安县2025-2026学年第一学期期末教学综合评价八年级地理试卷(含解析).docx
- 河南安阳市殷都区2025-2026学年第一学期期末教学质量检测七年级地理试卷(含解析).docx
- 河南安阳市滑县2025一2026学年第一学期期末学业质量监测八年级地理试题(含解析).docx
- 河南安阳市林州市2025-2026学年上学期期末考试高一政治试题(含解析).docx
- 河南焦作市武陟县第一中学2025-2026学年高一上学期1月月考语文试卷(含解析).docx
- 河南济源市2025-2026学年上学期期末学业质量调研七年级历史试卷(含解析).docx
- PICC导管并发症的紧急处理与护理.pptx
- 河南鹤壁市2025-2026学年高二上学期期末考试生物试题(含解析).docx
最近下载
- TL 591_EN-2024 灯用有机玻璃的材料要求.pdf
- 福建省5年(2021-2025)高考物理真题分类汇编:专题10 磁场(解析版).docx VIP
- 道路工程施工方案范文(3篇).docx VIP
- 2025年教育和体育局教师选调考试笔试试题(含答案).docx
- 可持续能源投资模式研究.docx VIP
- 可持续农业模式创新与产业发展关系分析.docx VIP
- 2026年广东省深圳市高考一模物理试题(含答案详解).pdf VIP
- 八年级物理下册《力与运动》单元复习差异化教学设计与实施方略.docx VIP
- 全球能源行业可持续转型路径与趋势研究.docx VIP
- 企业绿色转型的可持续金融路径研究.docx VIP
原创力文档

文档评论(0)