用C语言解决将字符串中每一个数字字符都替换成一个$字符。 在一行中输入长度小于20的含有数字字符的字符串。在字符串中不会出现换行符,空格,制表符。 直接输出变化后的字符串。
时间: 2024-03-22 21:41:05 浏览: 133
可以使用 C 语言中的字符串操作函数 `strlen` 和 `strchr` 来实现。具体的步骤是,遍历字符串的每一个字符,如果是数字字符,就将其替换成 `$` 字符,否则保持不变。
以下是实现这个功能的代码:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[20];
scanf("%s", str);
int len = strlen(str);
for (int i = 0; i < len; i++) {
if (strchr("0123456789", str[i]) != NULL) {
str[i] = '$';
}
}
printf("%s", str);
return 0;
}
```
这里使用了 `strchr` 函数来判断一个字符是否是数字字符。`strchr` 函数会在指定的字符串中查找指定字符,并返回其在字符串中的位置。如果找不到,就返回 `NULL`。因此,我们可以通过判断函数返回值是否为 `NULL` 来判断一个字符是否是数字字符。
相关问题
将字符串中每一个数字字符都替换成一个$字符。 在一行中输入长度小于20的含有数字字符的字符串。在字符串中不会出现换行符,空格,制表符。 直接输出变化后的字符串。用C语言
实现代码如下:
```c
#include <stdio.h>
int main() {
char str[20];
fgets(str, 20, stdin);
for (int i = 0; str[i] != '\0'; i++) {
if (str[i] >= '0' && str[i] <= '9') {
str[i] = '$';
}
}
printf("%s", str);
return 0;
}
```
注意代码中使用了 fgets 函数,它可以从标准输入流中读取指定长度的字符串,并且会在字符串末尾添加一个 '\0' 结束符,所以不用再手动添加。
输入一个字符串,用$字符替换字符串中的数字字符。 输入格式: 输入一个长度不超过20的包含数字字符的字符串。 输出格式: 输出将字符串中的每一个数字字符都替换成一个$字符后的字符串。c语言
下面是C语言实现代码:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[21];
scanf("%s", str);
for (int i = 0; i < strlen(str); i++) {
if (str[i] >= '0' && str[i] <= '9') {
str[i] = '$';
}
}
printf("%s\n", str);
return 0;
}
```
输入一个字符串并存储在字符数组str中。使用for循环遍历字符串中的每个字符,判断该字符是否为数字字符,如果是,则将其替换为'$'字符。最后使用printf函数输出替换后的字符串。注意换行符是题目要求的一部分,需要输出。最后返回0表示程序正常结束。
阅读全文