标题:
一个C语言的问题,各位帮下
[打印本页]
作者:
hilarylove
时间:
2009-3-22 23:47
标题:
一个C语言的问题,各位帮下
请补充一个fun函数,该函数的功能是按‘0’到‘9’统计一个字符串中的奇数数字字符各自出现的次数,结果保存在数组num中,不可以用字符串库函数
#include <conio.h>
#include <stdio.h>
#define N 1000
void fun(char *tt, int num[])
{
int i, j;
int bb[10];
char *p = tt;
for (i=0; i<10; i++)
{
num = 0;
bb = 0;
}
while (*p)
{
if (*p>='0' && *p<='9')
bb[*p-'0']++;
p++;
}
for (i=1, j=0; i<10; i=i+2, j++)
num[j]=bb;
}
main()
{
char str[N];
int num[10], k;
printf("\nPlease enter a char string:");
gets(str);
printf("\n*******The original string******\n");
puts(str);
fun(str, num);
printf("\n*******The number of letter******\n");
for (k=0; k<5; k++)
{
printf("\n");
printf("%d= %d ", 2*k+1, num[k]);
}
printf("\n");
}
复制代码
问下为什么bb[*p-'0']++;改成bb[*p]++;就不可以了。为什么要bb[*p-'0']++;而不是bb[*p]++;啊
急
作者:
猪猪
时间:
2009-3-24 17:30
:time: 不会语言!!!
作者:
Ksnort
时间:
2009-3-26 14:31
标题:
回复 1楼 hilarylove 的帖子
0 1 2 3 4 5 6 7 8 9而不是
1 2 3 4 5 6 7 8 9 10
好像是这个问题··
作者:
saitojie
时间:
2009-3-26 15:12
上面这个程序有错误吧!
问题一:
……
for (i=0; i<10; i++)
{
num = 0;
bb = 0;
}
……
复制代码
这个里面bb里面是数组是首地址,你想给他赋值为0,貌似不行吧!
问题二:
main()
{
char str[N];
int num[10], k;
复制代码
你的main函数到底有没有返回值,如果有请注明你的main函数返回值类型及return回来的是谁,
如果没有请说明是无返回值的函数,在main前加上void!
欢迎光临 【3.A.S.T】网络安全爱好者 (http://3ast.com/)
Powered by Discuz! 7.2