问题
问答题
使用VC++6.0打开考生文件夹下的源程序文件2.cpp。阅读下列函数说明代码。函数num(char *str)用于返回字符串中非数字的个数。
例如:abc123abc45
返回值为:6
将函数num补充完整。
注意:请勿改动主函数。
试题程序:
#include<iostream.h>
int num(char *str)
int main()
char str[1024];
cout<<"please input a string:"<<end1;
cin.getline(str,1024);
cout<<"char number is"<<num(str)<<end1;
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,循环结束就得到了非数字字符的个数。