问答题 使用VC++6.0打开 下的源程序文件2.cpp。阅读下列函数说明和代码。函数num(char *str)用于返回字符串中非数字的个数。
例如:abc123abc45
返回值为:6
将函数num补充完整。
注意:请勿改动主函数main。
试题程序:
#include<iostream.h>
int num(char *str)
{

}
int main()
{
char str[1024];
cout<<"please input a string:"<<endl;
cin.getline(str,1024);
cout<<"char number is"<<num(str)<<endl;
return 0;
}
【正确答案】
【答案解析】int number=0;
for(int i=0;str[i]! =0;i++)
if(str[i]>"9"||str[i]<"0") //非数字字符
number++;
return number;
答案考生文件夹 [解析] 利用循环搜索数组str中的元素,循环变量从0开始,直到str[i]=0(到了字符数组末端),不断从str中读取元素。每读到一个元素就判断是否是非数字字符,即满足条件“str[i]>"9"||str[i]<"0"”的字符为非数字字符,非数字字符个数加1,循环结束就得到了非数字字符的个数。