给定程序的功能是分别统计字符串中大写字母和小写字母的个数

给定程序的功能是分别统计字符串中大写字母和小写字母的个数,第1张

C++语言:

#include<iostream> 

#include<cstdio>   

using namespace std; 

int main() 

char str[50]; 

int i=0,n1=0,n2=0; 

cout<<"输入字符串:"; 

gets(str); 

while(str[i]!='\0') 

{   

if(str[i]>='a'&&str[i]<='z') 

n1++;

else if(str[i]>='A'&&str[i]<='Z')

n2++;

i++;

}    

cout<<"其中的小写字母个数是:"<<n1<<endl<<"其中的大写字母个数是:"<<n2<<endl;

return 0; 

}

扩展资料:

1、while循环:

只要给定的条件为真,while 循环语句会重复执行一个目标语句。

语法:

while(condition){statement(s);}

在这里,statement(s) 可以是一个单独的语句,也可以是几个语句组成的代码块。condition 可以是任意的表达式,当为任意非零值时都为真。当条件为真时执行循环。

当条件为假时,程序流将继续执行紧接着循环的下一条语句。

2、if语句:

一个 if 语句 后可跟一个可选的 else 语句,else 语句在布尔表达式为假时执行。

语法:

if(boolean_expression){

// 如果布尔表达式为真将执行的语句}

else{

// 如果布尔表达式为假将执行的语句}

如果布尔表达式为 true,则执行 if 块内的代码。如果布尔表达式为 false,则执行 else 块内的代码。

从字符串末尾一个一个输出。

只有#include<stdioh>,那么不让用stringh里面的函数,所以要自己算出字符串的长度。

void fun(char a)

{

int len = 0;

int i;

while(a[len]!='\0') len++; // 计算字符串长度

for(i=len-1; i>=0; i--) //逆序输出字符串

printf("%c", a[i]); 

}

你的答案是对的啊,递归算法:

void fun(char a)

{

if(a)

{

fun(a+1);

printf("%c",a);

}

}

函数返回值错误,不是 void,应该是int

修改码:

#include <iostreamh>

int fun(int s)

{

int t=1;s/=10;

t=s%10;

while(s>0)

{

s=s/100;t=s%10+10t;

}

return t;

}

void main()

{

int s;

cin>>s;

int t=fun(s);

cout<<"t="<<t<<endl;

}

#include<stdioh>

#include<stdlibh>

#include<stringh>

int compare(const void lhs,const voidrhs){

return (char)lhs-(char)rhs;

};

char diff(charlsz,charrsz){

char tmp,p,pl;

pl=lsz;

p=tmp=(char)malloc(strlen(lsz)+1);

memset(tmp,0,strlen(lsz)+1);

qsort(lsz,strlen(lsz),sizeof(char),compare);

qsort(rsz,strlen(rsz),sizeof(char),compare);

while(pl){

if(p!=pl && !bsearch(pl,rsz,strlen(rsz),sizeof(char),compare) ){

++p=pl++;

}

else

pl++;

}

strcpy(lsz,tmp+1);

free(tmp);

return lsz;

};

int main(){

char sz1[128],sz2[128];

scanf("%s %s",sz1,sz2);

printf("%s\n%s\n",sz1,sz2);

printf("%s\n",diff(sz1,sz2));

return 0;

};

其实这就是冒泡排序法的函数实现,跟普通的冒泡法没什么区别的

在函数中,给的参数是数组名和数组长度,这也是冒泡法最主要的两个数据了,给你具体实现一下:

void sort (int a[],int n)

{

int i,j,temp;

for(i=0;i<n-1;i++) //趟数

for(j=0;j<n;j++) //次数

if(a[j]>a[j+1])

{

temp=a[j];

a[j]=a[j+1];

a[j+1]=temp;

}

}

对N个数的排序需要N-1趟,每趟需要比较N次,这样的程序执行效率高。

楼上的执行了99趟,每趟99次,没有必要这么麻烦的,呵呵,他好像没注意函数的参数还有一个数组的长度

希望可以帮助你o(∩_∩)o

第一个空 x<4

第二个空 y<3

第三个空 有两种选择

1、z==3(如果数组下标按照C语言格式ss(0,0),ss(0,1)等)

2、z==1(如果下标按照通常用的SS(1,1),ss(1,2)开始)

for(i=2;i<=m;i++)

/found/

t=10-10/i;

/found/

return t ;

将上一段改为

for(i=3;i<=m;i++)

/found/

t=05-10/i;

/found/

return t ;

即可

以上就是关于给定程序的功能是分别统计字符串中大写字母和小写字母的个数全部的内容,包括:给定程序的功能是分别统计字符串中大写字母和小写字母的个数、我有道C++题目知道结果了,但不知道怎么写过程,问了好多同学他们都不知道,求救啊、下列给定程序中函数fun的功能是:从低位开始取出整型变量s中偶数位上的数,依次构成一个新数放在t中。例如等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zz/9271790.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-26
下一篇 2023-04-26

发表评论

登录后才能评论

评论列表(0条)

保存