这道题当时一直显示PE,调了好多次,翻了很多博客之后,将问题锁定在输出格式上。
在最后几行输出结果的时候,一定要记得和题目给出的outpute形式完全吻合,比如每一行的最后一个数字之后不能加“空格”,就是这一点导致我PE的。
正确代码:
#include<iostream>
#include<string>
int main(void)
{
int n,k;
std::cin >> n;
int count[n][10];
for(k = 0; k < n; k++)
{
for(int i = 0; i<10; i++)
count[k][i] = 0;
}
k = 0;
while(k<n)
{ int m;
std::cin >> m;
for(int i=1; i<=m; i++)
{ int j = i;
do
{
count[k][j%10]++;
j = j/10;
} while(j);
}
k++;
}
for(k = 0; k < n; k++)
{ int i = 0;
for(i = 0; i<9; i++)
{
std::cout << count[k][i] << " ";
}
std::cout << count[k][i] << std::endl;
}
}
最后for循环中的错误代码:
for(k = 0; k < n; k++)
{
for(int i = 0; i<10; i++)
{
std::cout << count[k][i] << " ";
}
std::cout << std::endl;
}