———————————————————**目录**——————————————————
一、 atoi函数介绍
- 功能
- 函数原型
- 使用示例
二、题解之一
三、留言
问题引入👉
输入样例👉
5 01234 00123 00012 00001 00000
输出样例👉
1234 123 12 1 0
一、atoi函数介绍
1、功能
👉
1.1 字符串转整数
- 它用于将字符串转换为对应的整数值。例如,如果有字符串“123”,使用atoi函数可以将其转换为整数123。
1.2处理规则
- 当遇到字符串中的非数字字符时,它会停止转换并返回已经转换得到的整数值。例如对于字符串“12a”,它会返回12。
- 如果字符串的首字符不是数字或者字符串为空字符串,它会返回0。
2、函数原型
👉
其函数原型为 int atoi(const char *str) ,这里 str 是要转换的字符串,函数返回转换后的整数值。
对于const char *str的理解,因为字符串是用字符数组存储,而字符串传参时传过去的是数组名,而数组名也即数组首元素的地址,所以用指针接受参数。
3、使用示例
注意:包含头文件<stdlib.h>
#include <stdio.h>
#include <stdlib.h>
int main() {
char str[] = "123";
int num = atoi(str);
printf("转换后的整数为: %d\n", num);
return 0;
}
二、题解之一
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
#include <stdlib.h>
int main()
{
int n = 0;
scanf("%d", &n);
int arr[200] = { 0 };
char str[6];
int i = 0;
for (i = 0; i < n; i++)
{
scanf("%s", str);
arr[i] = atoi(str);
}
int j = 0;
for (j = 0; j < n; j++)
{
printf("%d", arr[j]);
printf("\n");
}
return 0;
}
运行结果之一👉
5
01234
00123
00012
00001
00000
1234
123
12
1
0
三、留言
如果有错误或更好的解法,欢迎大家评论。希望与大家共同进步。