用C语言编写一个程序,要求为输入一个字符串,用指定字符替代字符串中的非数字字符并输出,在第一行中输入不超过80个字符长度的,以回车结束的非空字符串,在一行中输出替换完成后的字符串
时间: 2024-06-08 13:12:10 浏览: 52
以下是用C语言编写的程序,可以实现上述要求:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[81];
fgets(str, sizeof(str), stdin); // 读入一行字符串,包括回车符
str[strcspn(str, "\n")] = '\0'; // 去掉回车符
for (int i = 0; i < strlen(str); i++) {
if (str[i] < '0' || str[i] > '9') { // 非数字字符
str[i] = '*'; // 用 * 替代
}
}
printf("%s\n", str); // 输出替换完成后的字符串
return 0;
}
```
运行程序后,输入一个非空字符串,程序会将其中的非数字字符替换为 * 并输出。例如,输入字符串 `abc123def456`,输出字符串为 `***123***456`。
相关问题
利用C语言编写一个程序要求:输入一个字符串,统计字符串中指定字符出现次数并输出
以下是利用C语言编写一个程序,实现输入一个字符串,统计字符串中指定字符出现次数并输出的功能:
```c
#include <stdio.h>
#include <string.h>
int main()
{
char str[100];
char target;
int count = 0;
printf("请输入一个字符串:");
scanf("%s", str);
printf("请输入要统计的字符:");
scanf(" %c", &target);
for (int i = 0; i < strlen(str); i++)
{
if (str[i] == target)
{
count++;
}
}
printf("字符 %c 在字符串 %s 中出现了 %d 次。\n", target, str, count);
return 0;
}
```
运行程序后,会先要求输入一个字符串,再要求输入要统计的字符,程序会自动遍历字符串中的每一个字符,如果该字符等于要统计的字符,计数器就加1,最后输出统计结果。
用C语言编写一个程序,输入一个字符串,反转字符串并输出
以下是用C语言编写的程序,输入一个字符串,反转字符串并输出:
```
#include <stdio.h>
#include <string.h>
int main() {
char str[100];
int len, i, j;
char temp;
printf("请输入一个字符串:");
scanf("%s", str);
len = strlen(str);
for (i = 0, j = len - 1; i < j; i++, j--) {
temp = str[i];
str[i] = str[j];
str[j] = temp;
}
printf("反转后的字符串:%s", str);
return 0;
}
```
程序首先使用scanf()函数读取用户输入的字符串,并使用strlen()函数获取该字符串的长度。然后,程序使用一个for循环,从字符串的两端开始,依次交换字符,以达到反转字符串的目的。最后,程序输出反转后的字符串。
阅读全文