今天有人问我一个问题,怎样把运来已有的变量在是她变为空,当时我及问他你想干嘛,她说我自己想了道题:
定义个字符数组,输入一串数据,判断一下各个字母出现的次数,例如avadfasdfasdfasdg这一串字符数组,a出现了5次,用两个for实现
当时我问他自己的想法,她说我再定义一个数组,专门存储出现过的字母,当时我想这样很麻烦,而且浪费存储空间,然后我就想了个办法
把出现过得字母用完后赋值为空,就是ASC码值为0,
具体代码就是
#include<stdio.h>
int main()
{
int i;
char a[3]={'a','b','c'};
a[1]=(char)"NULL";
for(i=0;i<3;++i)
printf("%c***",a[i]);
return 0;
}
具体代码自己实现,嘿嘿。
今天想想还是把代码加上,这样才能让读者学习更加轻松
#include<stdio.h>
#include<string.h>
int main()
{
int i,j,flag=1;
char a[15],number;
printf("请输入数据:");
scanf("%s",a);
for(i=0;i<strlen(a);++i)
{
number=a[i];
for(j=i+1;j<strlen(a);++j)
{
if((a[j]==number)&&(a[j]!=(char)"NULL"))
{
a[j]=(char)"NULL";
flag++;
}
}
if(number!=(char)"NULL")
printf("字母为%c有%d个\n",number,flag);
flag=1;
}
return 0;
}