输入一行字符存进数组
时间: 2023-10-21 07:06:53 浏览: 109
请告诉我,输入一行字符存进数组。
你可以使用以下代码将输入的一行字符存入字符数组中:
```
#include <stdio.h>
int main() {
char str[128]; // 定义字符数组
printf("请输入字符串:");
scanf("%s", str); // 从键盘输入字符串
return 0;
}
```
请注意,这里假设输入的字符串长度不超过128个字符。
相关问题
C语言嗯输入一行字符把其中非数字存到数组中并输出
可以使用C语言的字符数组和循环语句来实现这个功能。具体代码如下:
```c
#include <stdio.h>
#include <ctype.h>
int main() {
char str[100];
int i, j;
printf("请输入一行字符:\n");
fgets(str, 100, stdin);
char non_digits[100];
j = 0;
for (i = 0; str[i] != '\0'; i++) {
if (!isdigit(str[i]) && str[i] != ' ') {
non_digits[j++] = str[i];
}
}
non_digits[j] = '\0';
printf("非数字字符为:%s\n", non_digits);
return 0;
}
```
上述代码中,首先定义了一个长度为100的字符数组`str`,并使用`fgets`函数从标准输入中读取一行字符。接着定义了另外一个长度为100的字符数组`non_digits`,用来存储非数字字符。使用循环语句遍历`str`数组中的每个字符,判断是否为数字或空格。如果不是数字或空格,则将该字符存入`non_digits`数组中。最后输出`non_digits`数组即可。需要注意的是,在`non_digits`数组的末尾加上了一个空字符,以便输出时正确显示。
C语言输入一行字符,把其中的非数字存到数组中输出
可以使用C语言的标准库函数`isdigit()`来判断一个字符是否为数字。具体实现过程如下:
```c
#include <stdio.h>
#include <ctype.h>
int main() {
char input[100]; // 定义输入数组
char non_digits[100]; // 定义非数字数组
int i = 0, j = 0;
printf("请输入一行字符:\n");
fgets(input, 100, stdin); // 从标准输入中读取一行字符
while (input[i] != '\0') { // 遍历输入数组
if (!isdigit(input[i])) { // 如果当前字符不是数字
non_digits[j] = input[i]; // 将非数字存入非数字数组
j++;
}
i++;
}
printf("非数字字符为:\n");
printf("%s", non_digits); // 输出非数字数组
return 0;
}
```
需要注意的是,在输入字符时要使用`fgets()`函数,而不是`scanf()`函数,因为`fgets()`可以读取一整行字符,而不会因为空格或换行符而中断读取。同时,读取的字符数组最后会自动加上一个`\0`作为结尾标志,因此我们可以通过判断是否到达了结尾来结束遍历。