1、三种进制及其转换
int i = 10000000000;//超出整型数域范围
NSLog(@"%d", i);
i = 1000000000 * 10;
int a = 1000000000;
int b = 10;
//...
i = a * b;
long j = 1000000000L * 10;//两个整型数相乘,结果还是整型
NSLog(@"%ld", j);
int c = 5 / 3;//两个整型数相除,结果还是整型
NSLog(@"%d", c);
int x;
x = 100;//十进制
NSLog(@"%d", x);
x = 0100;//八进制
NSLog(@"%d", x);
NSLog(@"%#o", x);
x = 0x100;//十六进制
NSLog(@"%d", x);
NSLog(@"%#x", x);
2、char
字符型
转义字符
//char ch = '中';//字符型变量不能存储中文
NSLog(@"%lu", sizeof("中国人"));//汉字只能用双引号引起来,不能使用单引号
char c1;
NSLog(@"%lu", sizeof(c1));
c1 = 100;
NSLog(@"%d", c1);
unsigned char c2;
NSLog(@"%lu", sizeof(c2));
c2 = 100;
NSLog(@"%u", c2);
char c;
c = 'a';
NSLog(@"%d", c);
NSLog(@"%c", c);
c = 'ABC';//当用单引号引起来多个字符时,只保留最后一个
NSLog(@"%c", c);
//c = '';//两个单引号之间不能没有字符
c = 'A';
c = c + 1;
NSLog(@"%c", c);
c = 'A';
c = c + 32;//从大写字母向小写字母转换
NSLog(@"%c", c);
c = c - 32;//从小写字母向大写字母转换
NSLog(@"%c", c);
//\n
NSLog(@"Hello\n world!");
//\r
NSLog(@"abcdef\rhij");
//\t
NSLog(@"姓名\t\t年龄");
NSLog(@"zhangsan\t18");
NSLog(@"lisi\t\t20");
//\'
char ch = '\'';
NSLog(@"%c", ch);
//\"
NSLog(@"他说:\"你好\"");
//反斜线
NSLog(@"打印一个反斜线\\");
//%
NSLog(@"5%%");
3、浮点型(关键字、字节数、数域范围、占位符)
关键字 字节数 数域范围 占位符
float 4 10^-38~10^37 %f %g %f默认输出小数点后6位 %g小数位多少位就是输出多少位最多不超过6位,小数精度6位
double 8 10^-308~10^307 %lf %lg 小数精度15位
long double 16 10^-4096~10^4951 %Lf 小数精度6位,占位符为大写的L
4、字面值(常量)后缀
//整型
int a = 100;
long int l = 100L;//L是长整型常量的后缀
long long int ll = 100LL;//LL是长长整型常量的后缀
unsigned int ui = 100u;//u是无符号整型常量的后缀
unsigned long int uli = 100ul;//ul是无符号长整型常量的后缀
unsigned long long int ulli = 100ull;//ull是无符号长长整型常量的后缀
//浮点型
float f = 3.14f;//f是float数据类型的后缀
double d = 3.14;
long double ld = 3.14L;//L是long double数据类型的后缀
5、sizeof():
是一个运算符不是一个函数,求所占字节数用
6、scanf()函数
scanf("%*c");//清楚键盘缓冲区中的\r
7、运算符
能完成一定功能的符号,如“+”
优先级:两个不同的运算符,先算谁的问题
结核性:两个相同的运算符,先算谁的问题
算数运算符
自增自减运算符
逻辑值
思考练习
1、从键盘输入一诶个两位数,如“35”,然后将其反向输出,如“53”
2、从键盘输入一个总秒数,输出时分秒
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
解析:
int main()
{
@autoreleasepool {
int x;
NSLog(@"请输入一个两位数:");
scanf("%d", &x);
NSLog(@"%d%d", x % 10, x / 10);
int seconds;
NSLog(@"请输入一个总秒数:");
scanf("%d", &seconds);
int hour = seconds / 3600;
int minute = seconds % 3600 / 60;
int second = seconds % 60;
NSLog(@"%02d:%02d:%02d", hour, minute, second);
}
return 0;
}