...一个自定义函数完成对任意一个字符串中大写字母、空格、数字和其他字...

发布网友 发布时间:2024-10-23 17:32

我来回答

4个回答

热心网友 时间:2024-11-06 07:16

void f(char* str,int *p1,int *p2, int *p3,int *p4)
{
char* pstr=str;

*p1=*p2=*p3=*p4=0;
while(1)
{
if (!*pstr)
{
break;
}
if(*pstr>='0'&&*pstr<='9')
{
(*p3)++; //数字
}
else if(*pstr>='A'&&*pstr<='Z')
{
(*p1)++;
// pstr++;
}
else if(*pstr==0x20)
{
(*p2)++;
// pstr++;
}else
{
(*p4)++;
// pstr++;
}
pstr++;
}
}

int main(int argc, char* argv[])
{
int p1,p2,p3,p4;
f("adfs344adsfa asdfaa345234sdfaadfaSDf823412343143 ad34werwe",&p1,&p2,&p3,&p4);
printf("大写字母:%d\n空格:%d\n数字:%d\n其它:%d\n",p1,p2,p3,p4);
return 0;
}

热心网友 时间:2024-11-06 07:19

写好了。有什么问题问就好了。
#include <iostream>
#include <cstring>
using namespace std;

void f(char *,int *,int *,int *,int *);

int main(int argc,char * argv[])
{
char * str = "Your string here.Test112233 over.";
int i1,i2,i3,i4;
i1 = i2 = i3 = i4 = 0;

f(str,&i1,&i2,&i3,&i4);

cout<<"统计字符串\""<<str<<"\":\n大写字符:"<<i1<<"个\n空格:"<<i2<<"个\n数字:"<<i3<<"个\n其他字符:"<<i4<<"个"<<endl;
cin.get();
return 0;
}
void f(char str[],int *p1,int *p2, int *p3,int *p4)
{
int i,len;

len = strlen(str);
for(i = 0;i < len;i++)
{
if(isalpha(str[i]) && str[i] == toupper(str[i]))
(*p1)++;
else if(str[i] == ' ')
(*p2)++;
else if(isdigit(str[i]))
(*p3)++;
else
(*p4)++;
}
}

热心网友 时间:2024-11-06 07:22

#include <iostream>
#include <string.h>

using namespace std;

void f(char str[], int *p1, int *p2, int *p3, int *p4)
{
*p1 = 0;
*p2 = 0;
*p3 = 0;
*p4 = 0;
int len=strlen(str);
for (int i=0; i<len; i++)
{
if (str[i] >= 'A' && str[i] <= 'Z')
{
(*p1)++;
}
else if (' ' == str[i])
{
(*p2)++;
}
else if ('0' <= str[i] && '9' >= str[i])
{
(*p3)++;
}
else
{
(*p4)++;
}
}
}

int main(void)
{
char str[] = "ZhiDao.BaiDu.Com 2011 12 17;";
int *p1 = new int;
int *p2 = new int;
int *p3 = new int;
int *p4 = new int;
f(str, p1, p2, p3, p4);
cout << "Upcase:" << *p1 << ",blank:" << *p2 << ",number:" << *p3 << ",else:" << *p4;
}

热心网友 时间:2024-11-06 07:18

1从键盘上任意输入一个字符,编程判断该字符是数字字符,大写字符,小写字符2完成2个字符串复制操作的函数设计 c; while((c=getchar())!=EOF)

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com