- <P>/*
- 从键盘输入一大堆字符串,统计A、B、C、D的出现次数,
- 最后出现次数由高到低输出字母和出现次数。(C语言)
- */
- #include <stdio.h>
- #include <string.h>
- typedef struct test{
- unsigned int count;
- char a;
- }TEST;
- int main()
- {
- int i, j;
- char a[100];
- TEST t[4], temp;
- t[0].a = 'A';
- t[1].a = 'B';
- t[2].a = 'C';
- t[3].a = 'D';
- for(i=0;i<4;i++)
- t[i].count = 0;
- printf("请输入以A、B、C、D四种字符任意个数、任意顺序所组成的字符串\n");
- scanf("%s",a);
- for(i=0;i<strlen(a);i++)
- {
- if(a[i] == 'A')
- t[0].count++;
- else if(a[i] == 'B')
- t[1].count++;
- else if(a[i] == 'C')
- t[2].count++;
- else if(a[i] == 'D')
- t[3].count++;
- }
- for(i=0;i<4;i++)
- {
- for(j=0;j<4-1-i;j++)
- {
- if(t[j].count<t[j+1].count)
- {
- temp = t[j];
- t[j] = t[j+1];
- t[j+1] = temp;
- }
- }
- }
- for(i=0;i<4;i++)
- printf("字符%c出现%d次\n", t[i].a, t[i].count);
- return 0;
- }</P>
复制代码
|
|