C语言程序填空

2025-03-23 05:00:32
推荐回答(2个)
回答(1):

楼上给的不太对。
我这个能正常运行的

#include "stdio.h"
main ()
{
char s1[80];int a[4]={0};
int k;

/***********SPACE***********/
void fun(char s[],int b[]);///////////【?】;
gets(s1);
/***********SPACE***********/
fun(s1,a);////////////////////////////【?】;
puts(s1);
for(k=0;k<4;k++)
{
printf("%4d",a[k]);
}
}

void fun(char s[],int b[])
{
int i;

for (i=0;s[i]!='\0';i++)
if ('a'<=s[i]&&s[i]<='z'||'A'<=s[i]&&s[i]<='Z')
b[0]++;
/***********SPACE***********/
else if ('0'<=s[i]&&s[i]<='9')//////////(【?】)
b[1]++;
/***********SPACE***********/
else if (' '==s[i])/////////////////////(【?】 )
b[2]++;
else b[3]++;
}

回答(2):

#include "stdio.h"
main ()
{
char s1[80];int a[4]={0};
int k;
/***********SPACE***********/
void fun(); //函数声明
gets(s1);
/***********SPACE***********/
fun(s1,a); //函数调用
puts(s1);
for(k=0;k<4;k++)
printf("%4d",a[k]);
}
void fun(char s[],int b[])
{
int i;
for (i=0;s[i]!='\0';i++)
if ('a'<=s[i]&&s[i]<='z'||'A'<=s[i]&&s[i]<='Z') b[0]++;
/***********SPACE***********/
else if (s[i]>='0'&&s[i]<='9') b[1]++;
/***********SPACE***********/
else if (s[i]==' ') b[2]++;
else b[3]++;
}