📄 getelement.cpp
字号:
#include "StdAfx.h"
void getletter(char * in)
{
char choice;
int flag = 1;
printf("请输入一段字符:");
do
{
fflush(stdin);
gets(in);
//去除字符中的空格
for(unsigned i = 0;i < strlen(in);i++)
{
if(in[i] == ' ')
{
for(unsigned int j = i;j < strlen(in);j++)
in[j] = in[j+1];
i--;
}
}
/*--------------除去字符串首的空格-----------------
while (in[0] == ' ')
{
for(unsigned i = 0;i < strlen(in);i++)
in[i] = in[i+1];
}
----------------------------------------------------*/
//处理只输入回车的情况
if (strlen(in) == 0)
{
printf("您未输入有效字符,是否重新输入(Y/N):");
scanf("%c",&choice);
while(choice!='y' && choice!='n' && choice!='Y' && choice!='N')
{
printf("选择错误,请重新选择(Y/N)");
fflush(stdin);
scanf("%c",&choice);
}
if (choice == 'Y' || choice == 'y')
printf("请输入一段字符:");
else
exit(1);
}
//不是只有回车时
else
flag = 0;
}while (flag == 1);
}
//求取各个字符的权重,储存在w[26]中
void getweight(char * in,char * letter,int * w,int * n)
{
unsigned int i,j;
//将字符串中的大写变为小写
for (i = 0; i < strlen(in);i++)
in[i] = tolower(in[i]);
//将第一个是字母的字符赋给letter[0]
for (i = 0;i < strlen(in);i++)
{
if((in[i] > 64 && in[i] < 91)||(in[i] > 96 && in[i] < 123))
{
letter[0] = in[i];
break;
}
}
* n = 1;
w[0] = 1;
//赋值并计录各个字符的个数
for (i = 1;i < strlen(in); i++)
{
if((in[i] > 64 && in[i] < 91)||(in[i] > 96 && in[i] < 123))
{
for (j = 0;j < strlen(letter); j++)
{
if(in[i] == letter[j])
{
w[j]+=1;
break;
}
}
if(j == strlen(letter))
{
letter[j] = in[i];
w[j]++;
(*n)++;
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -