任务代码:
字符串有多长:
#include <stdio.h>
int main()
{
char str[50];
printf("请输入字符串:");
gets(str);
int n=0;
while(str[n]!='\0')
{
n++;
}
/*也可以写成
int n=0;
while(str[n++]!='\0');
n--;
*/
printf("总共有%d个字符串!",n);
return 0;
}
统计数字字符个数:
#include <stdio.h>
int main()
{
char str[50];
printf("请输入字符串:");
gets(str);
int i=0,count=0;
while(str[i]!='\0')
{
if(str[i]>='0' && str[i]<='9') count++;
i++;
}
printf("总共有%d个数字!",count);
return 0;
}
每一个小写字母出现的次数:
#include <stdio.h>
int main()
{
char str[50];
int n[26]={0};//初始化n数组代表26个字母出现的次数,计数都为0
printf("请输入字符串:");
gets(str);
int i=0;
while(str[i]!='\0')
{
if(str[i]>='a' && str[i]<='z')
{
n[str[i]-'a']++;//使用技巧,小写字母a-‘a’就是n[0],b-'b'就是n[1]...
}
i++;
}
//输出
for(i=0;i<26;i++)
{
if(n[i]!=0)
{
printf("%c:%d\n",i+'a',n[i]);//使用技巧
}
}
return 0;
}
复制字符串(除空格字符外)
#include <stdio.h>
int main()
{
char str1[50];
char str2[50];
printf("enter the string1 :");
gets(str1);
int i=0,n=0;
//copy
while(str1[i]!='\0')
{
if(str1[i]!=' ')
{
str2[n++]=str1[i];
}
i++;
}
//print
printf("复制完后的字符串是:\n");
puts(str2);
return 0;
}