c语言。帮忙调试一下字符数组作为参数的程序,作业要求字符数组为全局变量
#include"stdio.h"chara[80];intcharacter(charb[80]){inti=0,j=0;for(i=0;i<=80;i++)if(b[...
#include "stdio.h"
char a[80];
int character(char b[80])
{
int i=0,j=0;
for(i=0;i<=80;i++)
if(b[i]>='A'&&<='Z'||b[i]>='a'&&b[i]<='z')
j++;
return j;
}
int number(char c[80])
{
int m=0,n=0;
for(n=0;n<=80;n++)
if(c[n]>='0'&&c[n]<='9')
m++;
return m;
}
int her(char d[80])
{
int q=0,w=0;
for(q=0;q<=80;q++)
if(d[q]=' ')
w++;
return w;
}
int other(char e[80])
{
int r=0,t=0;
for(t=0;t<=80;t++)
if(e[t]>='NUL'&&e[t]<='US'||e[t]>='!'&&e[t]<='/'||e[t]>=':'&&e[t]<='`'||e[t]>='{'&&e[t]<='DEL')
r++;
return r;
}
void mian()
{
gets(a);
printf("%d,%d,%d,%d",character(a),mumber(a),other(a),her(a));
} 展开
char a[80];
int character(char b[80])
{
int i=0,j=0;
for(i=0;i<=80;i++)
if(b[i]>='A'&&<='Z'||b[i]>='a'&&b[i]<='z')
j++;
return j;
}
int number(char c[80])
{
int m=0,n=0;
for(n=0;n<=80;n++)
if(c[n]>='0'&&c[n]<='9')
m++;
return m;
}
int her(char d[80])
{
int q=0,w=0;
for(q=0;q<=80;q++)
if(d[q]=' ')
w++;
return w;
}
int other(char e[80])
{
int r=0,t=0;
for(t=0;t<=80;t++)
if(e[t]>='NUL'&&e[t]<='US'||e[t]>='!'&&e[t]<='/'||e[t]>=':'&&e[t]<='`'||e[t]>='{'&&e[t]<='DEL')
r++;
return r;
}
void mian()
{
gets(a);
printf("%d,%d,%d,%d",character(a),mumber(a),other(a),her(a));
} 展开
4个回答
展开全部
#include <stdio.h>
char a[80];
void main() //
{
int c,n,b,o ;
int i;
gets(a);
c=n=b=o=0;
for( i=0;a[i]!='\0';i++ ) //a[i]=='\0'是字符串尾
{
if( (a[i]>='A'&& a[i]<='Z') || (a[i]>='a'&&a[i]<='z') )
c++;
else if(a[i]>='0'&& a[i]<='9')
n++;
else if ( a[i]==' ' )
b++ ;
else
o++;
}
printf("%d,%d,%d,%d\n",c,n,o,b);
}
更多追问追答
追问
但是作业要求调用函数,字符数组做参数,并且是全局变量。然后主函数输入字符串并输出结果。
追答
#include <stdio.h>
char a[80];
void func( char *a, int *c, int *n,int *b, int *o )
{
int i;
for( i=0;a[i]!='\0';i++ ) //a[i]=='\0'是字符串尾
{
if( (a[i]>='A'&& a[i]<='Z') || (a[i]>='a'&&a[i]<='z') )
(*c)++;
else if(a[i]>='0'&& a[i]<='9')
(*n)++;
else if ( a[i]==' ' )
(*b)++ ;
else
(*o)++;
}
}
void main() //
{
int c,n,b,o ;
gets(a);
c=n=b=o=0;
func( a, &c,&n,&b,&o );
printf("%d,%d,%d,%d\n",c,n,o,b);
}
展开全部
for(i=0;i<=80;i++)
这个地方错了,应该写成i<79,因为以0开始,而且有一个空字符
这个地方错了,应该写成i<79,因为以0开始,而且有一个空字符
追问
但是调试说明是<=号的错误,我看不懂
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
社会犹如一条船,每个人都要有掌舵的准备。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2014-12-16
展开全部
游戏QQ怎么下? 好高大号是哪个
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询