64,682
社区成员
发帖
与我相关
我的任务
分享
#include <iostream>
#include <cmath>
using namespace std;
int main(int argc, char** argv)
{
int first_two_digits = 0;
int number = -1234567; // 正负数皆可
if(number != 0) // number = 0没有对数
int digits = (int)floor(log(abs((double)number)) / log((double)10)) + 1;
first_two_digits = (int)(number / pow((double)10, digits - 2));
cout << first_two_digits << endl;
return 0;
}
//适用数低于10位的
#include "stdafx.h"
#include <iostream>
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
int a[50];
int d,i=0;
int j;
cout<<"输入数据:";
cin>>d;
while(d>0)
{
j=d%10;
d=d/10;
a[i]=j;
i++;
}
for(int j=0;j<i;j++) //依次输出每位
cout<<a[j]<<" ";
cout<<endl;
cout<<a[i-1]*10+a[i-2]<<endl; //输出最高两位
//cout<<a[i-1]<<" "<<a[i-2]<<endl;
return 0;
#include <stdio.h>
int i;//-2147483648..2147483647 32位整数范围
char s[12];
void main() {
scanf("%d",&i);
if (-10<i && i<10) return;
sprintf(s,"%d",i);
if (i<0) printf("%.2s\n",s+1);
else printf("%.2s\n",s );
}
#include <iostream>
using namespace std;
int main()
{
int val;
int bit[2];
cin>>val;
int tmp = val;
while(tmp >= 100)
{
tmp /= 10;
}
bit[1] = tmp % 10;
tmp /= 10;
bit[0] = tmp;
cout<<bit[0]<<bit[1]<<endl;
return 0;
}
#include <stdio.h>
#include <stdlib.h>
int cut(int n) {
char s[20] = { 0 };
sprintf(s, "%d", n);
char a = s[0] - 48;
char b = s[1] - 48;
int ret = a * 10 + b;
return ret;
}
int main() {
int num;
printf("Input a number\n");
scanf("%d", &num);
if (num >= 0) {
int ret = cut(num);
printf("ret=%d\n", ret);
}
if (num < 0) {
num = abs(num);
int ret = -cut(num);
printf("ret= %d\n", ret);
}
return 0;
}