标题:学习函数
关键词:函数
内容:
1 双十一剁手
2 统计一个字符串数组中的数字字符,英文字符,和其他字符的个数。
//
// main.cpp
// 例题
//
// Created by 张良 on 2016/11/10.
// Copyright © 2016年 张良. All rights reserved.
//
#include <iostream>
int numofchar(char *str,int *ch,int &oth)
{
char *p=str;
int num=0;//计算数字变量
*ch=0;//计算字符变量
oth=0;//计算其他变量
while(*p)
{
if(*p>='0'&&*p<='9')num++;
else if((*p>='a'&&*p<='z')||(*p>='A'&&*p<='Z'))(*ch)++;
else oth++;
p++;
}
return num;
}//这个函数最后返回的是数字变量的个数
int main()
{
char s[]="the value of 8%6 is 2.";
int number,character,other;
number=numofchar(s,&character,other);
std::cout<<"字符串"<<s<<"中的3种字符的个数分别是:"<<std::endl;
std::cout<<number<<'\t'<<character<<'\t'<<other<<std::endl;
}
3 删除一个字符串中的所有非数字字符,并将剩下的字符串转换为一个反顺序的整数。//
// main.cpp
// 例题
//
// Created by 张良 on 2016/11/10.
// Copyright © 2016年 张良. All rights reserved.
//
#include <iostream>
#include<string>
char *del(char *str)
{
int flag=0;
for(char *p1=str;*p1;p1++)
{
if(*p1<'0'||*p1>'9')
for(char *p2=p1;*p2;p2++){
*p2=*(p2+1);
flag=1;
}
if(flag==1){
p1--;
flag=0;
}
}
return str;
}
int conversion(char *str)
{
int s=0;
for(char *p=str+strlen(str)-1;p>=str;p--)
s=s*10+*p-'0';
return s;
}
int main()
{
char s[]="a1 @a 2h$34##5 6ga";
std::cout<<"逆序后的整数为"<<std::endl;
std::cout<<conversion(s)<<std::endl;
}