1.上取整
int m,n,ans;
ans=(m+n-1)/n;
例如:
被除数26,除数5,商上取整得6,即(26+5-1)/5=6。
被除数30,除数5,商上取整得6,即(30+5-1)/5=6(int是下取整)。
2.字母转数字
char a[100000+10];
cin>>a;
for(int i=0;i<strlen(a);i++)
{
a[i]=a[i]-('a'-'0');//字母转数字a~z:0~25
}
for(int i=0;i<strlen(a);i++)
{
a[i]=a[i]+('a'-'0');//数字转字母
}
或者更简洁的
char a;
int d;
cin>>a;//字母转数
d=a-'a';
cout<<d;
cin>>d;//数转字母
a=d+'a';
cout<<a;
3.统计字符串每个字母数量
scanf("%s",a);
int n=strlen(a);
for(int i=0;i<n;i++)
x[a[i]-'A']++;//统计大写字母