C语言C语言啊,是作业,大侠们救救急吧,10分追加

来源:百度知道 编辑:UC知道 时间:2024/05/17 09:16:36
一、程序填空题
请补充函数proc,该函数的功能是:从‘a’到‘z’统计一个字符串中所有字母字符各自出现的次数,结果保存在数组buff中。
注意:不区分大小写,不能使用字符串库函数。例如,若输入:“A=abc+5*c”,则输出结果为:a=2,b=1,c=2,d以后所有字母字符出现的次数全为0。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数proc的横线上填入所编写的若干表达式或语句。
试题程序

#include <stdlib.h>
#include <conio.h>
#include <stdio.h>
#define M 100
void proc(char *str,int buff〔〕)
{
int i;
char *p=str;
for (i=0;i<26;i++)
【1】;
while(*p)
{
if(*p>=‘A’&&*p<=‘Z’)
【2】;
if(*p>=‘a’&&*p<=‘z’)
buff〔*p-’a’〕++;
【3】;
}
}
void main()
{
char str〔M〕;
char a=‘a’;
int buff〔26〕,k;
system("CLS");
printf("\nPlease enter a char string:");
scanf("%s",str);
printf("\n**The original string**\n");
puts(str);
proc(str,buff);
printf("\n**The numb

填空题:
#include <stdlib.h>
#include <conio.h>
#include <stdio.h>
#define M 100
void proc(char *str,int buff[])
{
int i;
char *p=str;
for (i=0;i<26;i++)
buff[i]=0;
while(*p)
{
if(*p>='A'&&*p<='Z')
buff[*p-'A']++;
if(*p>='a'&&*p<='z')
buff[*p-'a']++;
p++;
}
}
void main()
{
char str[M];
char a='a';
int buff[26],k;
system("CLS");
printf("\nPlease enter a char string:");
scanf("%s",str);
printf("\n**The original string**\n");
puts(str);
proc(str,buff);
printf("\n**The number of letter**\n");
for (k=0;k<26;k++)
{
if(k%5==0)
printf("\n");
printf("%c=%d ",a+k,buff[k]);
}
printf(