特殊回文数
#include <stdio.h>
int main() {
int n,i,a,b,c,d,e,f,sum;
scanf("%d",&n);
for(i=10000;i<100000;i++)
{
a=i/10000;
b=i/1000%10;
c=i/100%10;
d=i/10%10;
e=i%10;
sum=a+b+c+d+e;
if(a*10+b==e*10+d&&sum==n)
{
printf("%d\n",i);
}
}
for(i=100000;i<1000000;i++)
{
a=i/100000;
b=i/10000%10;
c=i/1000%10;
d=i/100%10;
e=i/10%10;
f=i%10;
sum=a+b+c+d+e+f;
if(a*100+b*10+c==f*100+e*10+d&&sum==n)
{
printf("%d\n",i);
}
}
return 0;
}
十进制转之十六进制
#include<stdio.h>
#include<stdlib.h>
int main() {
int n,b,count=0,c;
int a[100];
scanf("%d",&n);
if(n==0)
printf("%d",n);
while(n!=0) {
b=n;
n=n/16;
a[count]=b%16;
count++;
}
for(c=count-1;c>=0;c--) {
if(a[c]>9&&a[c]<16)
printf("%c",(a[c]-10+'A'));
else
printf("%d",a[c]);
}
printf("\n");
return 0;
}
视频学习
赋值运算符,算术运算符:表达式的值的类型,以操作数中精确度的类型为准(精度:double>long long>int>short>char),溢出
eg:
#include<iostream>
using namespace std;
int main()
{
unsigneed int n1 = 0xffffffff;
cout << n1 << endl;
unsigned int n2 = n1 + 3;
cout << n2 << endl;
return 0;
}
解决溢出的办法十尽量使用更高精度的数据类型
除法的计算结果,类型和操作数中精度高的类型相同
求余数的运算符%也称为模运算符
自增运算符++:
++a:将a的值加1,表达式返回值为a加1后的值
a++:将a的值加1,表达式返回值为a加1前的值
eg:
#include<iostream>
using namespace std;
int main()
{
int n1,n2=5;
n2 ++;
++ n2;
n1 = n2 ++;
cout << n1 << "," << n2 << endl;
n1 = ++ n2;
cout << n1 << "," << n1 << endl;
return 0;
}