c语言从字符串中找出数字并输出
时间: 2024-05-15 10:15:04 浏览: 89
以下是一个示例程序,可以从字符串中找出数字并输出:
```
#include <stdio.h>
#include <ctype.h>
int main() {
char str[100];
printf("请输入字符串:");
fgets(str, 100, stdin);
printf("其中的数字为:");
for(int i = 0; str[i] != '\0'; i++) {
if(isdigit(str[i])) { // 如果是数字
printf("%c", str[i]);
}
}
return 0;
}
```
程序首先从用户输入中读入一个字符串,然后遍历字符串中的每个字符,如果字符是数字,就输出它。在这个程序中,我们使用了 `isdigit()` 函数来判断一个字符是否是数字。如果是数字,就输出它。
相关问题
用c语言输入一个数字n,并输入n个字符串,找出最长的字符串并输出该字符串
在C语言中,你可以使用`fgets`函数从用户那里获取输入的整数`n`,然后使用循环来读取并存储每个字符串。遍历过程中,可以同时维护一个最长字符串的指针。以下是实现这个功能的一个简单示例:
```c
#include <stdio.h>
#include <string.h>
#define MAX_LEN 100 // 字符串的最大长度
int main() {
int n;
char longest[MAX_LEN] = ""; // 初始化最长字符串为空
fgets(&n, sizeof(n), stdin); // 读取n
n = atoi(n); // 转换为整数
for (size_t i = 0; i < n; i++) {
char str[MAX_LEN];
fgets(str, sizeof(str), stdin); // 读取字符串
str[strcspn(str, "\n")] = '\0'; // 去除行尾的'\n'
if (strlen(str) > strlen(longest)) { // 比较当前字符串长度
strcpy(longest, str); // 更新最长字符串
}
}
printf("最长的字符串是:%s\n", longest);
return 0;
}
c语言输入一串字符,输出字符串中的数字[0-9]
在C语言中,要输入一串字符并找出其中的数字(0到9),可以使用`ctype.h`库里的函数配合循环结构。以下是一个简单的示例程序:
```c
#include <stdio.h>
#include <ctype.h> // 包含处理字符类型的函数
void find_digits(char str[]) {
int i = 0;
while (str[i]) { // 遍历整个字符串直到遇到空字符
if (isdigit(str[i])) { // 使用isdigit()检查字符是否为数字
printf("%d", str[i]); // 打印找到的数字
}
i++;
}
}
int main() {
char input[100];
printf("请输入一串字符: ");
fgets(input, sizeof(input), stdin); // 输入一行字符,fgets用于防止换行符
input[strcspn(input, "\n")] = '\0'; // 删除换行符
find_digits(input);
return 0;
}
```
在这个程序中,用户会被提示输入一串字符,然后`find_digits()`函数会遍历这个字符串,对于每个字符,如果它是数字,就打印出来。
阅读全文