请编写一个函数 void fun(char *tt,int pp[]),统计在tt字符串中'a'到 50
请编写一个函数voidfun(char*tt,intpp[]),统计在tt字符串中'a'到'z'26个字母各自出现的次数,并依次放在pp所指数组中。例如:当输入字符串ab...
请编写一个函数 void fun(char *tt,int pp[]),统计在tt字符串中'a'到' z'26个字母各自出现的次数,并依次放在pp所指数组中。 例如:当输入字符串abcdefgabcdeabc后,程序的输出结果应该是:3 3 3 2 2 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 注意:部分源程序给出如下。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。 试题程序: #include <conio.h> #include <stdio.h> #include <stdlib.h> void fun(char*tt,int pp[] ) { } void main( ) { char aa[1000]; int bb[26], k; system("CLS"); printf("\nPlease enter a char string : ") ; scanf("%s",aa); fun(aa,bb); for (k=0 ;k<26 ; k++) printf("%d ",bb[k]) ; printf("\n "); }
展开
4个回答
展开全部
在不改变主函数的前提下,补充fun函数,代码如下:
#include <conio.h>
#include <stdio.h>
#include <stdlib.h>
void fun(char*tt,int pp[] )
{
int t;
for(t=0;t<26;t++)
{
pp[t]=0;
}
while(*tt!='\0')
{
t=*tt-'举和锋a';
pp[t]++;
tt++;
}
}
void main( )
{
char aa[1000];
int bb[26], k;
system("CLS");
printf("\nPlease enter a char string : "棚逗) ;
scanf("%s",aa);
fun(aa,bb);
for (k=0 ;k<正晌26 ; k++)
printf("%d ",bb[k]) ; printf("\n ");
}
#include <conio.h>
#include <stdio.h>
#include <stdlib.h>
void fun(char*tt,int pp[] )
{
int t;
for(t=0;t<26;t++)
{
pp[t]=0;
}
while(*tt!='\0')
{
t=*tt-'举和锋a';
pp[t]++;
tt++;
}
}
void main( )
{
char aa[1000];
int bb[26], k;
system("CLS");
printf("\nPlease enter a char string : "棚逗) ;
scanf("%s",aa);
fun(aa,bb);
for (k=0 ;k<正晌26 ; k++)
printf("%d ",bb[k]) ; printf("\n ");
}
展开全部
#include <conio.h>
#include <stdio.h>
#include <stdlib.h>
void fun(char*tt,int pp[] ) {
char *p 慧雹= tt;
char c;
for (int i = 0; 斗败i < 26; ++i){
pp[i] 空碧颤= 0;
}
while (c = *p++){
pp[c - 'a']++;
}
}
void main( ) {
char aa[1000];
int bb[26], k;
system("CLS");
printf("\nPlease enter a char string : ") ;
scanf("%s",aa);
fun(aa,bb);
for (k=0 ;k<26 ; k++)
printf("%d ",bb[k]) ;
printf("\n ");
}
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
main()
{
void fun(char *tt,int pp[6]);
char s[500],i;
int a[6];
printf("掘或input char.\n");
scanf("%s",s);
fun(s,a);
for(i=0;i<6;i++)
printf("%d ",a[i]);
}
void fun(char *tt,int pp[6])
{
pp[0]=pp[1]=pp[2]=pp[3]=pp[4]=pp[5]=0;
while(*(tt++)!='\0')
{
if(*tt=='耐核a') pp[0]++;
if(*tt=='a') pp[0]++;
if(*tt=='a'昌散掘) pp[0]++;
{
void fun(char *tt,int pp[6]);
char s[500],i;
int a[6];
printf("掘或input char.\n");
scanf("%s",s);
fun(s,a);
for(i=0;i<6;i++)
printf("%d ",a[i]);
}
void fun(char *tt,int pp[6])
{
pp[0]=pp[1]=pp[2]=pp[3]=pp[4]=pp[5]=0;
while(*(tt++)!='\0')
{
if(*tt=='耐核a') pp[0]++;
if(*tt=='a') pp[0]++;
if(*tt=='a'昌散掘) pp[0]++;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<stdio.h>
#include<string.h>
void fun(char *tt,int pp[]);
int main()
{
char *tt="abcdefgabcdeabc";
int pp[26];
fun(tt,pp);
for(int i=0;i<26;i++)
{
printf("%d ",pp[i]);
}
return 0;
}
void fun(char *tt,int pp[])
{
int i;
for(i=0;i<26;i++)
{
pp[i]=0;
}
for( ;*tt!='\0';tt++)
{
if(*tt>键皮悔握袭='稿正a'&&*tt<='z')
pp[*tt-'a']++;
}
}
#include<string.h>
void fun(char *tt,int pp[]);
int main()
{
char *tt="abcdefgabcdeabc";
int pp[26];
fun(tt,pp);
for(int i=0;i<26;i++)
{
printf("%d ",pp[i]);
}
return 0;
}
void fun(char *tt,int pp[])
{
int i;
for(i=0;i<26;i++)
{
pp[i]=0;
}
for( ;*tt!='\0';tt++)
{
if(*tt>键皮悔握袭='稿正a'&&*tt<='z')
pp[*tt-'a']++;
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询