C语言(8)
------字符串与函数
写在" "里面的内容,我们称为“字符串”
在C语言,没有字符串类型,但是,可以用一个字符数组来表示一个字符串
C语言,由于没有单独的字符串类型,所以,要存储这一类型的数据,一般使用字符数组来存储
char names[10]="大家好";
%d 代表整数
%f 代表浮点数
%c 代表字符类型
%s 代表字符串
字符串的本质,就是一个以'\0'结尾的字符数组
要存放字符串,一般使用字符数组来存放
使用scanf给字符数组赋值的时候,& 可以不写,用户如果不写,系统也加默认添加
给字符数组赋值字符串的时候, &可以写,也可以不写
为了可以正常的接收字符串中的空格,可以使用另一个命令来接收字符串
scanf("%s",);-----这种语法,不能接收字符串的空格
gets(字符数组的名称);----这种语法,可以接收字符串,并且,可以接收到字符串的空格
scanf("%s",&数组名);----------------gets(数组名);
printf("%s",数组名);----------------puts(数组名);
printf("姓名是:%s\n",names); puts(names);
puts();----一般用于直接输出字符串
printf();----在输出字符串的时候,可以控制格式
char name[10];//可以存放一个字符串,长度为10
char names[3][10];//可以存放3个字符串,每个字符串的最大长度为10
#include<stdio.h>----导入函数库
当导入对应的函数库,这个函数库中,所包含的功能就可以使用
printf,scanf--------------stdio.h
如果要使用与字符串相关的函数,需要导入 string.h
#include<string.h> 包含了一组与string操作相关的函数
计算字符串长度的函数: int len =
strlen(字符串);
判断两个字符串是否相等的函数 strcmp
int i = strcmp(第一个字符串,第二字符串);
如果两个字符串,相等,i的值就会等于0,否则不等于0
任务:
动态接收一个字符串,判断姓名是否等于jack,如果是,显示登录成功,否则,显示登录失败
strcmp用于比较两个字符串是否一样
ASCII码
键盘中的每一个键,都有一个编码与之对应
A --------------65
B --------------66
C --------------67
Z -------------- 90
a ---------------97
b ---------------98
z ---------------97+25
strcmp(a,b); 如果a比b的ascii值大,返回1,如果a比b的ascii小,返回-1,如果一样,返回0
A
BB
CCC
DDDD
EEEEE