c语言每日学习8.24

void reverse_string(char* str) 为什么不用传递数组的长度?

在C语言中,字符串通常是以空字符'\0'结尾的字符数组。因此,当你传递一个字符串(即字符数组的指针)给函数时,函数可以通过遍历字符串直到遇到空字符来确定字符串的长度。这就是为什么reverse_string函数不需要显式传递数组长度的原因。

reverse_string函数内部,使用strlen函数可以计算字符串的长度,这是因为strlen函数会遍历字符串直到遇到空字符,并返回遍历过的字符数量(不包括空字符)。

所以,即使不传递数组的长度,reverse_string函数也能通过遍历字符串来确定其长度,并进行反转操作。

cpp 复制代码
#include<stdio.h>
int DigitSum(int n);
int main()
{

	int num = 0;
	scanf("%d", &num);

	printf("%d\n", DigitSum(num));

	return 0;
}
int DigitSum(int n)
{
	int a = n % 10;
	int temp = n / 10;
	
	if (n != 0)
	{
		return a + DigitSum(temp);
	}
	
}
cpp 复制代码
#include<stdio.h>
int power(int n, int k);
int main()
{
	int n = 0;
	int k = 0;
	scanf("%d %d", &n, &k);

	printf("%d\n", power(n, k));

	return 0;
}
int power(int n, int k)
{
	
	if (k != 0)
	{
		return n * power(n, k-1);
	}
}
相关推荐
谎言西西里4 小时前
LeetCode 热题100 --- 双指针专区
算法
leo__5207 小时前
基于两步成像算法的聚束模式SAR MATLAB实现
开发语言·算法·matlab
前端小白在前进7 小时前
力扣刷题:在排序数组中查找元素的第一个和最后一个位置
数据结构·算法·leetcode
某林2128 小时前
基于SLAM Toolbox的移动机器人激光建图算法原理与工程实现
stm32·嵌入式硬件·算法·slam
修炼地9 小时前
代码随想录算法训练营第四十三天 | 图论理论基础、深搜理论基础、卡码网98. 所有可达路径、797. 所有可能的路径、广搜理论基础
算法·深度优先·图论
iAkuya9 小时前
(leetcode)力扣100 23反转链表(迭代||递归)
算法·leetcode·链表
剪一朵云爱着9 小时前
PAT 1095 Cars on Campus
算法·pat考试
LBJ辉9 小时前
第 4 章 串
数据结构·考研
MicroTech202510 小时前
激光点云快速配准算法创新突破,MLGO微算法科技发布革命性点云配准算法技术
人工智能·科技·算法
Cathy Bryant10 小时前
傅里叶变换(一):简介
笔记·算法·数学建模·信息与通信·傅里叶分析