c语言字符串数组 scanf如何输入
时间: 2024-11-03 10:15:33 浏览: 22
详解C语言中的字符串数组
在 C 语言中,当你需要从标准输入(通常是键盘)读取字符串并存储到字符串数组中时,可以使用 `scanf` 函数结合数组名来实现。假设你有一个字符串数组 `strArray` 和其大小 `n`,你可以这样操作:
```c
#include <stdio.h>
#include <string.h>
#define SIZE 5 // 修改为你想要的数组大小
int main() {
char strArray[SIZE][20]; // 20是为了容纳最大20字符长度的字符串,包括空字符'\0'
int i;
printf("请输入 %d 个字符串:\n", SIZE);
for (i = 0; i < SIZE; ++i) {
printf("请输入第%d个字符串: ", i + 1);
if (fgets(strArray[i], sizeof(strArray[i]), stdin) != NULL) { // fgets函数防止换行符溢出
strArray[i][strcspn(strArray[i], "\n")] = '\0'; // 去掉fgets读入的换行符
} else {
printf("输入失败!\n");
return 1;
}
}
// 打印数组中的字符串
for (i = 0; i < SIZE; ++i) {
printf("第%d个字符串: %s\n", i + 1, strArray[i]);
}
return 0;
}
```
阅读全文