问答题

请编写一个函数int CalcDigital(char *str),该函数可返回字符串str中数字字符(即0~9这10个数字)的个数,如字符串“olympic2008”中数字字符的个数为4。请用if条件判断语句与for循环语句来实现该函数。 注意:部分源程序已存在文件test9_2.cpp中。 请勿修改主函数main和其他函数中的任何内容,仅在函数find的花括号中填写若干语句。 文件test9_2.cpp的内容如下: #include<iostream.h> #include<string.h> int CalcDigital(char*str); void main() { char *str; str=new char[255]; cout<<"输入字符串:"; cin>>str; int num=CalcDigital(str); cout<<str<<":"<<num<<endl; } int CalcDigital(char *str) { }

【参考答案】

int CalcDigital(char *str) { if(str==NULL) return 0; ......

(↓↓↓ 点击下方‘点击查看答案’看完整答案 ↓↓↓)
热门 试题

问答题
使用VC6打开考生文件夹下的工程test9_3,此工程包含一个源程序文件test9_3.cpp,其中定义了Circle类与Money类, Circle类可对半径为r的圆进行周长与面积的计算,而Money类用于计算一圆形游泳池的造价。游泳池四周有原形过道,过道外围上栅栏,过道宽度为3米,根据键入的游泳池半径,每米栅栏价格及每平方米过道价格,即可计算出游泳池的造价。请按要求完成下列操作,将程序补充完整。(1)定义符号常量PI(值为3.14159f)与WIDTH(值为3.00f),分别用于表示圆周率与过道的固定宽度。请在注释“ **1**”之后添加适当的语句。(2)定义Circle类默认构造函数,把私有成员radius初始化为参数r的值。请在注释 “ **2**” 后添加适当的语句。(3)完成Money类默认构造函数的定义,把私有成员FencePrice(每米栅栏的价格)、ConcretePrice(每平方米过道的价格)初始化为参数f,c的值。请在注释“ **3**”之后添加适当的语句。(4)完成Money类成员函数float Money::TotalMoney(float fencelen,float conarea)的定义,根据参数fencelen(栅栏的长度)和conarea(过道的面积),返回栅栏与过道的总造价。请在注释“ **4**”之后添加适当的语句。注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。源程序文件test9_3.cpp清单如下:#include<iostream.h> **1**class Circle{private:float radius;public: **2**float Circumference(){return 2 * PI * radius;)float Area(){return PI * radius * radius;)};class Money{private:float FencePrice;float ConcretePrice;public:Money(float f,float c);float TotalMoney(float fencelen, float conarea);};Money::Money(float f,float c){ **3**}float Money::TotalMoney(float fencelen,float conarea){ **4**}void main(){float radius,fence,concrete;cout.setf(10s::fixed);cout.setf(ios::showpoint);cout.precision(2);cout<< Enter the radius of the pool: ;cin>>radius;cout<< Enter the FencePrice: ;cin>>fence;cout<< Enter the ConcretePrice: ;cin>>concrete;Circle Pool(radius);Circle PoolRim(radius + WIDTH);Money mon(fence,concrete);float totalmoney=mon.TotalMoney(PoolRim.Circumference(),(PoolRim.Area() - P00l.Area()));cout<< The total money is RMB <<totalmoney<<endl;}