问题遇到的现象和发生背景
用代码块功能插入代码,请勿粘贴截图
我想要达到的结果
输出不来结果,不知道错哪里了,这里凑一下字数,呃呃以挖出是
按照题目要求手机号应该是连续输入的一串数字,你用int数组接收的话,只能每次一个数,然后空格输入。
我的思路是:
1,用字符串接收手机号码
2,将后三位通过字符转换为数字存到int数组中
3,组合8+后三位
4,按照你输入的组数,将结果输出到屏幕
{
int n, i, j, m, k;
char str[11] = { 0 };
int a[11] = { 0 };
char b[2] = { 0 };
int N[200] = { 0 };
while (scanf("%d", &n) != EOF)
{
j = 0;
while (n--)
{
memset(str,0x00,sizeof(str));
scanf("%s", str);
for (i = 0; i <= 10; i++)
{
b[0] = str[i];
b[1] = '\0';
a[i] = stoi(b);
}
for (m = 0, k = 0, i = 8; i <= 10; i++)
{
k = k + a[i];
if (i != 10)
{
k = k * 10;
}
}
m = 8000 + k;
N[j]=m;
j++;
continue;
}
break;
}
for (n = 0;n<j; n++)
{
printf("%d\n", N[n]);
}
}