福州网站建设企业哪家好?,沈阳市建设工程信息网站,wordpress首页视频主题,上海推广系统描述 计算字符串中含有的不同字符的个数。字符在 ASCII 码范围内( 0~127 #xff0c;包括 0 和 127 )#xff0c;换行表示结束符#xff0c;不算在字符里。不在范围内的不作统计。多个相同的字符只计算一次。数据范围#xff1a; 1≤n≤500 例如#xff0c;对于字符串 ab…描述 计算字符串中含有的不同字符的个数。字符在 ASCII 码范围内( 0~127 包括 0 和 127 )换行表示结束符不算在字符里。不在范围内的不作统计。多个相同的字符只计算一次。数据范围 1≤n≤500 例如对于字符串 abaca 而言有 a、b、c 三种不同的字符因此输出 3 。
输入描述 输入一行没有空格的字符串。
输出描述 输出 输入字符串 中范围在(0~127包括0和127)字符的种数。
示例1 输入abc 输出3 示例2 输入aaa 输出1 将字符串中的每个元素强制转化为ASCll码作为新建数组的下标数组的值代表字符串中每种元素的个数最后遍历数组来统计共出现字符种类的数量。
C语言
#include stdio.h
#includestring.h
int main() {char str[500];scanf(%s,str);//存放128种字符的个数int con[128]{0};//以字符的ASCLL码作为下标存于数组中for (int i0; istrlen(str);i) {//一种字符第一次出现if(con[(int)str[i]]0){con[(int)str[i]]1;}//一种字符出现一次以上else {con[(int)str[i]]1;}}//统计元素的种类int count0;for (int i0; i128;i) {if(con[i]!0)count;}printf(%d,count);return 0;
}
Java
import java.util.Scanner;
public class Main {public static void main(String[] args) {Scanner in new Scanner(System.in);String strin.next();//存放128种字符的个数int[] indexnew int[128];//将字符串转化为字符数组并遍历整个数组x表示数组中的元素for(char x:str.toCharArray()){if(x\n)break;else {//一种字符第一次出现if(index[x]0)index[x]1;//一种字符出现一次以上elseindex[x]1;}}//统计不同字符数量int count0;for(int i0;i128;i){if(index[i]!0)count;}System.out.println(count);}
}