11.28

复习 1、字符数组 1)输入、输出  %s 2)字符数组初始化 字符串 char ch[]=“hello” 2、字符串处理函数 1)函数原型 函数返回值 函数名(形参1类型 形参1,形参2类型 形参2…) 2)函数的调用 语法  函数名(实参1,实参2…) 说明:实参必须有确定的值,并且个数和形参保持一致,类型和形参一致或赋值兼容  int a=3.6,double x=3;
1、字符串输入、输出函数
int gets( char * str)====从键盘输入一个字符串,保存到str所指向的内存单元中
 int  puts(char * str)===输出str所指向的地址中的字符串,并且换行
char  ch[20];
gets(ch);<
>gets(&ch[0])
gets(ch[1])错误,实参类型为char,而函数gets要求的形参类型为char *
gets(&ch[1])正确,从键盘输入一个字符串,保存到从ch[1]开始的数组元素
puts(ch);
puts(&ch[1]);正确,输出从ch[1]开始的一个字符串(到\0之前的字符串)
puts(“hello”);
2、字符串连接函数
char * strcat(char * str1,char *str2)  将str2所指向的字符串,连接到str1所指向的字符串后面,并且去掉st1后面的\0,返回的是str1(地址)
注意,str1所指向的内存单元足够大(放下连接后的字符串)char ch1[]=“hello”;
char ch2[]=“world”;
strcat(ch1,ch2);错误,ch1不足够大
char ch1[20]=“hello”;
char ch2[]=“world”;
strcat(ch1,ch2);正确
puts(ch1);输出helloworld
puts(strcat(ch1,ch2));将strcat(ch1,ch2)函数调用的结果(函数的返回值)作为puts的实参,调用正确,输出???
strcat(ch1,&ch2[3]);
puts(ch1);输出hellold
puts(strcat(ch1,&ch2[3]));输出????strcat(&ch1[2],ch2);
puts(ch1);输出  helloworld  ???puts(strcat(&ch1[2],ch2));输出   ?????3、字符串复制函数
1)函数原型
char * strcpy(char * str1,char *str2)把str2指向的字符串复制到str1所指向的内存单元中,返回str1(地址)
注意,str1所指向的内存单元大小要大于等于str2所指向的内存单元大小char ch1[20]=“hello”;
char ch2[]=“wor”;strcpy(ch1,ch2);
puts(ch1);输出worstrcpy(“hello”,“worldddd”);错误,第一个参数的内存空间不足够大puts(strcpy(ch1,ch2));输出worstrcpy(&ch1[1],&ch2[1]);
puts(ch1);输出horputs(strcpy(&ch1[1],&ch2[1]))输出or等价于   strcpy(&ch1[1],&ch2[1]);puts(&ch1[1]);2)
函数原型
char * strncpy(char * str1,char *str2,int n);把str2指向的字符串中的n个字符(不一定包含\0)复制到str1所指向的内存单元中,返回str1(地址)
char ch1[20]=“hello”;
char ch2[]=“world”;strncpy(ch1,ch2,3);
puts(ch1);//输出worlo4、字符串比较函数函数原型
int strcmp(char *str1,char * str2)
比较两个字符串的大小(逐个字符比较ASCII值的大小),如果str1>str2返回1,如果str1=str2返回0,如果str1<str2返回-15、字符串有效长度函数
函数原型unsigned int strlen(char *str)
统计str字符串中字符的个数,不包括\0,返回字符个数char ch1[20]=“hello”;
char ch2[]=“world”;
int a,b,c;
a=strlen(ch1); 5
b=strlen(ch2); 5
c=strlen(“wordl”); 56、字符串转换小写
strlwr(char * str)char ch1[]=“Hello”
strlwr(ch1)//hello7、字符串转换成大写
 strupr(char *str)char ch1[]=“Hello”
strupr(ch1);   //HELLO
第七章  函数(实现了一定功能的代码模块)-模块化,代码复用
1、函数的定义
语法
函数返回值类型 函数名(形参1类型 形参1,形参2类型 形参2…)//函数的首部
{    //函数体,函数功能的实现
}说明:函数的返回值类型,即函数类型,是函数完成功能后的返回值的类型,如果没有,明确定义为void ,如果有返回值,则在函数体中要使用return语句带回返回值
函数名为任意合法的标识符
形参 :函数完成功能时,所必须的已知条件,如果没有则括号什么也不写,称为无参函数( 例如求1-100的和就是无参函数)
函数体:用大括号括起来的内容,是函数功能的完整实现
例如,写一个函数,求两个整数的和int add(int x, int y)
{
    int z=x+y;
    return z;
}int f=add(2,3);int add()
{
  int x,y,z;
  scanf("%d%d",&x,&y);
  z=x+y;
  return z;
  
}int f=add();
2、函数的调用
3、函数的声明(函数原型声明)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值