设为首页
收藏本站
切换到窄版
登录
立即注册
找回密码
搜索
搜索
本版
帖子
用户
快捷导航
论坛
BBS
C语言
C++
NET
JAVA
PHP
易语言
数据库
IE盒子
»
论坛
›
IE盒子
›
C语言
›
C语言经典题目每日一题-第一天-
返回列表
发帖
查看:
166
|
回复:
1
C语言经典题目每日一题-第一天-
[复制链接]
迷失的灵魂
迷失的灵魂
当前离线
积分
17
4
主题
8
帖子
17
积分
新手上路
新手上路, 积分 17, 距离下一级还需 33 积分
新手上路, 积分 17, 距离下一级还需 33 积分
积分
17
发消息
发表于 2022-11-26 19:41:56
|
显示全部楼层
|
阅读模式
1,前言
今天是学习C语言的第一天,于是我下定决心做好刷题笔记,为了督促自己好好学习,坚持就是胜利!!
2,描述
键盘输入一个字符串,编写代码获取字符串的长度并输出,要求使用字符指针实现。
输入描述:
键盘输入一个字符串
输出描述:
输出字符串的长度
3,示例1
输入: helloworld
输出:10
4,思路分析
题意整理。
键盘输入一个字符串。 -获取该字符串的长度,并输出,要求使用指针实现。
方法一(指针)
1.解题思路
定义一个指针指向字符串开头。
只要指针对应元素不是'\n',将指针后移,同时长度加1。
动图展示:
5,题解
#include <iostream>
using namespace std;
int main() {
char str[100] = { 0 };
cin.getline(str, sizeof(str));
int len=0;
char *p=str;
//只要指针没有指向换行符位置
while(*p!=&#39;\0&#39;){
//长度加1,指针p后移
len++;
p++;
}
cout<<len<<endl;
return 0;
}
6,刷题经验分享
刷题的第一个意义就是帮助你记忆,记忆那些方法和步骤。刷题不在量,而在系统和坚持。对于一类题,每天刷一两道就够了,想要不忘记,应该坚持定期或者是系统性地刷(高数就是这样)。这不仅仅帮你记忆,而且能节省下很多时间。我最近就是在刷算法的练习题,现在感觉自己肉眼可见的提升!!
刷题的第二个意义就是培养题感,同时保住题感。为什么二轮复习鼓励你刷题,就是想让你培养出题感。刷题时最重要的不是做出这道题,而是要能够看出这道题属于哪一个板块,属于那一部分知识,应该用什么方法来解。你要懂得从题目中
读懂老师的出题意图
,并从自己的
知识框架
中提取需要的工具。
7,总结
复杂度分析
时间复杂度:假设字符串的长度位n,循环总共执行n次,所以时间复杂度为O(n)O(n)O(n)。
空间复杂度:需要额外常数级别的空间,所以空间复杂度为O(1)O(1)O(1)。
回复
使用道具
举报
严昌飞
严昌飞
当前离线
积分
9
1
主题
6
帖子
9
积分
新手上路
新手上路, 积分 9, 距离下一级还需 41 积分
新手上路, 积分 9, 距离下一级还需 41 积分
积分
9
发消息
发表于 2025-2-26 17:29:34
|
显示全部楼层
这么强,支持楼主,佩服
回复
使用道具
举报
返回列表
发帖
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
本版积分规则
发表回复
回帖后跳转到最后一页
浏览过的版块
C++
快速回复
返回顶部
返回列表