devc++中,对于顺序表示的字符串,用scanf函数输入一串任意字符串并使用自定义函数求出该字符串的长度的完整代码
时间: 2024-10-29 17:20:06 浏览: 9
在输入输出字符串时scanf(),printf()和gets(),puts()的区别浅谈
5星 · 资源好评率100%
在Dev-C++中,你可以使用`stdio.h`库中的`scanf`函数读取用户输入的字符串,然后通过遍历字符串的方式来计算其长度。这里有一个简单的示例代码:
```cpp
#include <iostream>
#include <cstring> // 包含strlen() 函数
// 自定义函数计算字符串长度
size_t getLength(const char* str) {
size_t length = 0;
while (str[length] != '\0') { // '\0'是字符串结束符
length++;
}
return length;
}
int main() {
char input[100]; // 用于存储输入字符串,假设最大长度不超过99
printf("请输入一个字符串:");
// 使用scanf读取字符串
if (scanf("%s", input) == 1) { // 如果成功读入一个字符串,scanf返回1
// 清除潜在的换行符
input[strcspn(input, "\n")] = '\0';
// 计算并输出字符串长度
size_t length = getLength(input);
std::cout << "输入字符串的长度是:" << length << std::endl;
// 别忘了关闭输入流
scanf("\n"); // 消耗掉可能存在的换行符
} else {
std::cerr << "无法读取字符串!" << std::endl;
}
return 0;
}
```
阅读全文