#include<stdio.h>
int z(char *ch);
void main()
{
char num[50];
int m = 0;
printf("输入字符串 \n");
gets(num);
m = z(num);
printf("%d",m);
}
int z(char *ch)
{
int i = 0,n;
while(*ch == '\0')
{
break;
if(*ch == 'x')
{
i++;
}
n++;
}
return i;
}
帮忙看看为什么输出的结果为0
谢谢了~!~!~
----------------解决方案--------------------------------------------------------
#include<stdio.h>
int z(char *ch);
void main()
{
char num[50];
int m = 0;
printf("输入字符串 \n");
gets(num);
m = z(num);
printf("%d",m);
}
int z(char *ch)
{
int i = 0,n;
while(*ch == '\0')
{
break;
if(*ch == 'x')
{
i++;
}
n++;
}
return i;
}
帮忙看看为什么输出的结果为0
谢谢了~!~!~
----------------解决方案--------------------------------------------------------
#include<stdio.h>
#include <string.h>
int z(char *ch);
int main(void)
{
char num[50];
int m = 0;
printf("输入字符串 \n");
gets(num);
m = z(num);
printf("%d",m);
return 0;
}
int z(char *ch)
{
int i = 0;
int n = 0;
for (n = 0; n < strlen(ch); n++)
{
if (*(ch +n) != '\n')
{
if (*(ch+n) == 'x')
i++;
} //for
} //for
return i;
}
这个是对的.
----------------解决方案--------------------------------------------------------
谢谢了`!~!~!~!
----------------解决方案--------------------------------------------------------
#include<stdio.h>
int z(char *ch);
void main()
{
char num[50];
int m = 0;
printf("输入字符串 \n");
gets(num);
m = z(num);
printf("%d",m);
}
int z(char *ch)
{
int i = 0,n;
while(*ch == '\0')
{
break;
if(*ch == 'x')
{
i++;
}
n++;
}
return i;
}
帮忙看看为什么输出的结果为0
谢谢了~!~!~
这样改动是不是小一点,呵呵
#include<stdio.h>
int z(char *ch);
void main()
{
char num[50];char *ch;
int m = 0;
printf("输入字符串 \n");
gets(num);
ch=&num[0];
m = z(ch);
printf("%d",m);
}
int z(char *ch)
{
int i=0,n=0;
while(*(ch+n)!='\0')
{
if(*(ch+n)=='x')
{
i++;
}
n++;
}
return i;
}
[此贴子已经被作者于2006-9-9 11:35:51编辑过]
----------------解决方案--------------------------------------------------------
#include"stdio.h"
void main()
{
char str[100],*p;
gets(str);
int k;
k=0;
for(p=str;(*p)!='\0';p++)
{
if(*p=='x'|| *p=='X')
k++;
}
printf("x&&X=:%d\n",k);
}
----------------解决方案--------------------------------------------------------
#include"stdio.h"
void main()
{
char str[100],*p;
gets(str);
int k;
k=0;
for(p=str;(*p)!='\0';p++)
{
if(*p=='x'|| *p=='X')
k++;
}
printf("x&&X=:%d\n",k);
}
k定义的位置有问题,在c中,变量的定义放在{}的最前边,在c++则无限制.
----------------解决方案--------------------------------------------------------
偶用的就是vc++6.0滴丫
----------------解决方案--------------------------------------------------------
没必要改动啊!
有什么优点呢?
----------------解决方案--------------------------------------------------------
我也是用VC6.0
----------------解决方案--------------------------------------------------------