瑞星卡卡安全论坛

首页 » 技术交流区 » 系统软件 » 【求助】C++
菊馨 - 2005-11-16 11:33:00
本人是C++的初学者,刚上机发现有些不懂,上来求助各位高手。
题目如下:
输入一个字符串,设其长度不超过30,试统计该字符串中所有的十进制数字字符的个数
我对题目的理解是,该字符串的长度是任定的只要不超过30就可以了。例:输入3个字符(ac1)后输入回车程序就计算结果(1)。
故编写程序如下
#include<iostream>
using namespace std;
int main()
{
    char a[30];
    int i,n=0,j=1;
    for(i=0;i<30;i++)
        {
            cin>>a;
            if(a=='\r')  break;
            if('0'<=a&&'9'>=a)
                n++;
        }
   
    cout<<n<<endl;
    return 0;
}
但结果是一定要输入30个字符才行.
请教各位老大,要怎么编写才行呢?谢谢!
haste - 2005-11-16 14:04:00
cin输入后要输入到数组中呀.

楼主定义的数组长度也不够30呀,

判断输入是否是数字的时候最好用ASCII来进行判断~!



haste - 2005-11-16 14:05:00



菊馨 - 2005-11-16 16:10:00
已改了,但数组的改不了
菊馨 - 2005-11-16 16:24:00
刚问了老师,原来CIN不能判断回车。还有为什么用ASCII码好,怎样用啊,请指教,谢谢!
还有,想大家对我这一个C++初学者提点建议吧,例如看些什么书,谢谢啦~!
haste - 2005-11-17 8:09:00

偶也是初学者,

下面是偶早上写的,没调适,没修改.

请楼主参考一下吧!

还有学C++要看大量的书,当你明白了老师讲的东东后,

再深入的看一些课外的书.

如果有好书请推荐给偶,

因为偶也是刚学不久,多多交流!



附件: 2823962005111780908.jpg
haste - 2005-11-17 8:10:00
说明一下,

没输完的时候中途退出,请按"q"键!

每输入一个字体后,按一下回车可以呀!
1
查看完整版本: 【求助】C++