c++字符串数组比较大小的代码
时间: 2023-05-02 20:06:42 浏览: 219
在C语言中,字符串数组无法直接使用运算符进行比较,因为字符串是由若干个字符组成的,比较它们的大小需要逐个比较字符的ASCII码值。以下是一个比较字符串数组大小的示例代码:
```
#include <stdio.h>
#include <string.h>
int main()
{
char str1[50], str2[50];
printf("输入第一个字符串:");
fgets(str1, 50, stdin); // 从标准输入读取字符串
printf("输入第二个字符串:");
fgets(str2, 50, stdin);
int cmp = strcmp(str1, str2);
if(cmp == 0)
{
printf("两个字符串相等\n");
}
else if(cmp > 0)
{
printf("第一个字符串大于第二个字符串\n");
}
else
{
printf("第一个字符串小于第二个字符串\n");
}
return 0;
}
```
上述代码使用了`strcmp()`函数进行字符串比较,该函数会返回一个int值。如果第一个字符串大于第二个字符串,返回值大于0。如果第一个字符串小于第二个字符串,返回值小于0。如果两个字符串相等,返回值等于0。通过判断返回值的大小,可以得出字符串数组的大小比较结果。
相关问题
c++字符串数组输入
你好!针对你的问题,你可以使用以下方式来输入字符串数组:
1. 通过键盘输入:
```c
#include <stdio.h>
int main() {
int i;
char str[5][20]; // 定义一个包含5个字符串的字符串数组
printf("请输入5个字符串:\n");
for (i = 0; i < 5; i++) {
scanf("%s", str[i]);
}
printf("输入的字符串为:\n");
for (i = 0; i < 5; i++) {
printf("%s\n", str[i]);
}
return 0;
}
```
2. 直接初始化数组:
```c
#include <stdio.h>
int main() {
int i;
char str[5][20] = {"Hello", "World", "C", "Programming", "Language"};
printf("输入的字符串为:\n");
for (i = 0; i < 5; i++) {
printf("%s\n", str[i]);
}
return 0;
}
```
这些示例代码中,我们使用了一个二维字符数组来存储字符串。你可以根据需要修改数组的大小和元素个数。
C++ 输入字符串数组末尾
你好!感谢你的提问。如果你想在 C 语言中输入一个字符串数组的末尾,你可以使用以下方法:
1. 首先,你需要定义一个字符串数组。例如,你可以使用以下代码创建一个长度为10的字符串数组:
```c
char strArray[10][100];
```
这里我们定义了一个大小为10的字符串数组,每个字符串的最大长度为100。
2. 接下来,你可以使用循环来输入字符串。例如,你可以使用以下代码将字符串输入到数组中:
```c
int i;
for (i = 0; i < 10; i++) {
printf("请输入第 %d 个字符串:", i+1);
scanf("%s", strArray[i]);
}
```
在这个例子中,我们使用了一个循环来逐个输入字符串,循环变量 i 的范围是从 0 到 9,对应数组的索引。
3. 最后,你可以通过访问数组的最后一个元素来获取输入的字符串。例如,你可以使用以下代码来获取输入的最后一个字符串:
```c
char lastString[100];
strcpy(lastString, strArray[9]);
```
在这个例子中,我们使用了 strcpy 函数将最后一个字符串复制到一个新的字符数组中。
这样,你就可以成功地在 C 语言中输入一个字符串数组的末尾了。希望对你有所帮助!如有任何疑问,请随时提问。
阅读全文