学习日志(九)
字符串的应用(一)
1) 输入一个字符串(含空格),将这个字符串逆序
#include <stdio.h>
#include <string.h>
int main() {
char str[100];
scanf("%s",str);
int len=strlen(str); //求长度
for(int i=len-1;i>=0;i--) { //用循环逆序遍历字符串
printf("%c",str[i]); //输出逆序形式
}
printf("\n");
return 0;
}
2)统计一个字符串中字符的数量
#include <stdio.h>
#include <string.h>
int main() {
char str[1000];
scanf ("%[^\n]",str); //不读取字符串中的换行符
int count=0;
for (int i=0;i<strlen(str);i++) {
if (str[i]!=' '&& str[i]!='\n') { //空格和换行符不包含在内
count++;
}
}
printf ("%d\n",count);
return 0;
}
3)字符串中字符的替换
#include <stdio.h>
#include <string.h>
int main() {
char string[100]; //用于存储输入的字符串
char a,b; //用于接受要替换的两个字符
int i=0;//用于记录输入字符串的长度
char ch; //用于逐个接收输入字符串的字符
while ((ch=getchar())!='\n'&&i<99) {
string[i++]=ch;
} //逐个读取输入的字符,并且存入string数组中
string[i]='\0'; //最后手动添加字符串结束标志
scanf(" %c %c", &a, &b);
int len=strlen(string);
for (int i=0;i<len;i++) {
if (string[i]==a) {
string[i]=b;//发现字符串中的字符与a相等时,将该字符替换成b
}
}
printf("%s\n", string);
return 0;
}