c语言二维数组输入字符串
时间: 2023-12-02 11:41:32 浏览: 117
下面是一个示例程序,演示如何使用二维字符数组输入字符串:
```c
#include <stdio.h>
int main()
{
char str[3][10]; // 定义一个3行10列的二维字符数组
// 逐行输入字符串
for(int i=0; i<3; i++)
{
printf("请输入第%d个字符串:", i+1);
scanf("%s", str[i]); // 使用%s格式符输入字符串
}
// 逐行输出字符串
for(int i=0; i<3; i++)
{
printf("第%d个字符串为:%s\n", i+1, str[i]); // 使用%s格式符输出字符串
}
return 0;
}
```
运行程序后,依次输入三个字符串,程序会逐行输出这三个字符串。
相关问题
C语言二维数组实现字符串查找
以下是C语言二维数组实现字符串查找的代码示例:
```c
#include <stdio.h>
#include <string.h>
int main() {
int N;
while(scanf("%d", &N), N != 0) {
char s[100][100];
int i;
int max_i, max_len = 0;
for(i = 0; i < N; i ++) {
scanf("%s", s[i]);
}
for(i = 0; i < N; i ++) {
int l = strlen(s[i]);
if(max_len < l) {
max_len = l;
max_i = i;
}
}
printf("%s\n", s[max_i]);
}
return 0;
}
```
该代码使用二维字符数组s来存储输入的字符串,通过循环遍历数组中的每个字符串,使用strlen函数获取字符串长度,然后比较长度大小,找到最长的字符串并输出。
c语言二维数组字符串居中对齐
在C语言中,可以使用`printf()`函数来格式化输出字符串。要将二维数组的字符串居中对齐,可以使用`printf()`函数的格式控制符来指定输出的宽度和对齐方式。具体来说,可以使用`%-Ns`格式控制符来指定输出宽度为N,并将字符串左对齐;使用`%Ns`格式控制符来指定输出宽度为N,并将字符串右对齐;使用`%*s`格式控制符来指定输出宽度为变量`width`的值,并将字符串左对齐。其中,`N`和`width`都是整数值。
下面是一个示例代码,演示了如何在C语言中将二维数组的字符串居中对齐:
```c
#include <stdio.h>
#include <string.h>
#define ROWS 3
#define COLS 5
int main() {
char arr[ROWS][COLS] = {"hello", "world", "c"};
int max_len = 0;
for (int i = 0; i < ROWS; i++) {
int len = strlen(arr[i]);
if (len > max_len) {
max_len = len;
}
}
for (int i = 0; i < ROWS; i++) {
int len = strlen(arr[i]);
int width = (max_len - len) / 2 + len;
printf("%*s\n", width, arr[i]);
}
return 0;
}
```
该代码首先定义了一个3行5列的二维字符数组`arr`,然后遍历数组,找到最长的字符串长度`max_len`。接着,再次遍历数组,计算每个字符串的输出宽度`width`,并使用`printf()`函数将字符串居中对齐输出。