c++中用string类型写一个数组,然后遍历它
时间: 2024-05-05 20:15:23 浏览: 10
在 C 语言中,没有原生的 string 类型。但是可以使用 char 数组来表示字符串。下面是一个使用 char 数组来表示字符串的例子:
```c
#include <stdio.h>
int main() {
char str[] = "hello, world!";
int i;
for (i = 0; str[i] != '\0'; i++) {
printf("%c", str[i]);
}
return 0;
}
```
在这个例子中,我们声明了一个名为 str 的 char 数组,并将字符串 "hello, world!" 赋值给它。然后我们使用一个 for 循环来遍历这个数组,直到遇到字符串的结束符 '\0' 为止。在每次循环中,我们使用 printf 函数输出数组中的每个字符。
输出结果为:
```
hello, world!
```
相关问题
举例c++中用string类型写一个数组,然后遍历它的一个例子
下面是一个示例代码,用string类型定义一个数组,并遍历它:
```c
#include <stdio.h>
#include <string.h>
int main()
{
// 定义一个string类型的数组
char strArray[5][100] = {"Hello", "world", "from", "OpenAI", "API"};
// 遍历数组
for(int i = 0; i < 5; i++)
{
printf("%s ", strArray[i]);
}
return 0;
}
```
输出结果为:
```
Hello world from OpenAI API
```
在c++中用字符串的方法写一段浮点数加法的代码
下面是一段用字符串方法实现浮点数加法的代码:
```c
#include <stdio.h>
#include <string.h>
void add_float(char *a, char *b, char *result) {
int i, j, k, carry = 0;
int a_len = strlen(a), b_len = strlen(b);
int max_len = (a_len > b_len) ? a_len : b_len;
char *a_rev = strrev(a);
char *b_rev = strrev(b);
int *sum = (int*) malloc((max_len + 1) * sizeof(int));
for (i = 0; i < max_len; i++) {
int a_digit = (i < a_len) ? (a_rev[i] - '0') : 0;
int b_digit = (i < b_len) ? (b_rev[i] - '0') : 0;
sum[i] = a_digit + b_digit + carry;
carry = sum[i] / 10;
sum[i] %= 10;
}
if (carry > 0) {
sum[max_len] = carry;
max_len++;
}
for (i = 0, j = max_len - 1; j >= 0; i++, j--) {
if (i == 1) {
result[i] = '.';
i++;
}
result[i] = sum[j] + '0';
}
result[i] = '\0';
free(a_rev);
free(b_rev);
free(sum);
}
int main() {
char a[] = "1234.56";
char b[] = "7890.12";
char result[20];
add_float(a, b, result);
printf("a + b = %s\n", result);
return 0;
}
```
这段代码中,我们首先将两个浮点数以字符串的形式传入函数 `add_float()`,然后将它们反转,方便从低位到高位进行计算。接着,我们创建了一个数组 `sum`,用来存储每位的和。我们从低位到高位遍历两个浮点数,依次将对应的位上的数字相加,再加上进位,得到当前位上的和。如果当前位上的和超过了10,那么就要进位。最后,我们将数组 `sum` 中的数字反转回来,再将它们转换成字符串形式,得到最终的结果。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![application/msword](https://img-home.csdnimg.cn/images/20210720083327.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)