有问题先搜索一下: 高级搜索

已解决问题 - 浏览175次

下一个已解决问题
sibyl5201314sibyl5201314

伴读书童

程序问题--字符串统计

题目:对于给定的一个字符串,统计其中数字字符出现的次数。
Input
输入数据有多行,第一行是一个整数n,表示测试实例的个数,后面跟着n行,每行包括一个由字母和数字组成的字符串。
Output
对于每个测试实例,输出该串中数值的个数,每个输出占一行。
Sample Input
2
asdfasdf123123asdfasdf
asdf111111111asdfasdfasdf
Sample Output
6
9
我是程序
#include<iostream>
using namespace std;

int main()
{
int a, b, d, i, j;
int m[100][100], n[100][1];

while(scanf("%d", &a) != EOF)
{
for(j = 0; j < a; j++)
{
for(i = 0; i < 100; i++)
cin >> m[j][i];
}
for(j = 0; j < a; j++)
{
d = 0;
for(i = 0; i<100; i++)
{
if(0 < m[j][i] < 9)
d++;
else
continue;
}
n[j][0] = d;
}
for(j = 0; j < a; j++)
cout << n[j][0] << endl;
}
return 0;
}
请问高手,这个程序哪里错了?讲具体点,多谢!

还可输入300个字

请输入上图中的验证码,字母不区分大小写。

东东东东

伴读书童

最佳答案 - 由投票者2008-10-27 01:02:02选出

1,字符串可以看成是字符数组,版主你将字符型数组与整型(int)数组混为一团。
2.VC++中,如要比较int变量与char变量的大小的话,实际上是比较int变量与char变量对应的ASCII码值的大小。
例如:int a=1;
char b='1';
那么a与b谁大?
按2的说法应该是:
a==2;
b为char型,字符:‘1’的ASCII码值为:49
所以是:b>a

0 0

还可输入300个字

请输入上图中的验证码,字母不区分大小写。

返回知识堂首页>>

猜你喜欢看

更多

1
关于雅虎 | 帮助中心 | 联系我们 | 诚聘英才 | 广告服务 | 壹推广服务 | 搜索竞价 | 雅虎百业窗 | 网站联盟 [更多]
Copyright © 2008 Yahoo.com.cn 版权所有 不得转载 | 使用须知 | 著作权声明 | 京ICP证000022号 | 国家药监局(京)-经营性-2004-0039
全球阿里巴巴 - 阿里巴巴网络:中国站 国际站 日文站 | 淘宝站 | 支付宝 | 中国雅虎 | 口碑网 | 阿里软件 | 阿里妈妈