萌新的C语言成长日志6

字符串

字符‘\0’是一个转义字符,称为“空值”,同时也是字符串结束标志,但不计入串的实际长度。

使指针指向一个字符串
(1)可以在定义字符指针变量的同时,将存放字符串的存储单元起始地址赋给指针变量
(2)如果定义了一个字符型指针变量,可以通过赋值运算符将某个字符串的起始地址赋给它

字符串的输入和输出
对于字符串可以利用%c格式说明或字符输入(gets)、输出(puts)函数逐个输入、输出字符,输入时在最后加入‘\0’从而构成字符串,输出时用‘\0’作为输出结束标志。也可以用格式说明符%s进行整串输入和输出

用于字符串处理的函数
(1)拷贝函数strcpy
strcpy(s1,s2)
(2)字符串连接函数strcat
strcat(s1,s2)
(3)求字符串长度函数strlen
strlen(s)
(4)字符串比较函数strcmp
strcmp(s1,s2)

函数的指针与递归调用

c语言中函数名代表该函数的入口地址,因此可以定义一种指向函数的指针来存放这种地址。
函数名或指向函数的指针变量可以作为实参传送给函数

#include <stdio.h>
#include <math.h>
double tran(double (*)(double), double (*)(double), double);/*函数说明语句*/
main()
{
	double y, v;
	v = 60 * 3.1416 / 180.0;
	y = tran(sin, cos, v);/*第一次调用*/
	printf("tan(60) = %10.6f\n", y);
	y = tran(cos, sin, v);/*第二次调用*/
	printf("cot(60) = %10.6f\n", y); 
}
double tran(double (*f1)(double), double (*f2)(double), double x)
{
	return (*f1)(x) / (*f2)(x);
}

函数可以递归调用,即:可以直接或间接地自己调用自己。
递归的条件:
(1)可以把要解的问题转化为一个新的问题,而这个新的问题的解法任与原来的解法相同,只是所处理的对象有规律地递增或递减。
(2)可以应用这个转化过程使问题得到解决。
(3)必定要有一个明确的结束递归的条件。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值