//三目运算符
int a = 5 ;
int c;
c = a>5 ? a:0 ;
printf ("c = %d \n" ,c);
/*
一个数,实现使其低四位翻转,
即0 变成1 ,1 变成0 ,并输出得到结果
*/
int a = 9 ;
int mask = ~(~0 <<4 );
int result = a^mask;
printf ("result:%d \n" ,result);
unsigned int a = 11 ;
unsigned char mask = ~(~0 <<4 );
unsigned int result = a&mask;
printf ("result:%u\n" ,result);
short a = 12 ;
short mask = ~0 <<8 ;
short result = a&mask;
printf ("result:%d\n" ,result);
int p,n;
unsigned int a = 19 ;
unsigned int mask = ~(~0 <<n)<<p;
unsigned int result = a^mask;
printf ("%u\n" ,result);
int array [10 ] = {1 ,2 ,3 ,4 ,5 ,6 ,7 ,8 ,9 ,10 };
int a = 10 ;
printf ("a所占内存大小:%lu\n" ,sizeof (a));
printf ("array所占内存大小:%lu\n" ,sizeof (array ));
int array [10 ] = {1 ,2 ,3 ,4 ,5 ,6 ,7 ,8 ,9 ,10 };
printf ("array_1:%d\n" ,array [9 ]);
int array2[] = {2 ,3 ,4 ,5 };
int eleCount = sizeof (array2)/sizeof (int );
printf ("array2:%lu\n" ,sizeof (array2));
printf ("%lu\n" ,sizeof (array ));
int array [10 ] = {1 ,2 ,3 };
printf ("array_0:%d\n" ,array [0 ]);
printf ("array_9:%d\n" ,array [9 ]);
array [0 ] = 12 ;
printf ("array_0:%d\n" ,array [0 ]);
int array [10 ] = {8 ,11 ,2 ,33 ,45 ,12 ,34 ,12 ,87 ,90 };
for (int i = 0 ; i<10 ; i++) {
printf ("%d\n" ,array [i]);
}
int n = 10 ;
int array3[N] = {};
int array [3 ] = {1 ,2 ,3 };
int a = array [2 ];
int c = 0 [array ];
printf ("a = %d\n" ,a);
printf ("c = %d\n" ,c);
int array [3 ][2 ] = {{1 ,2 },{3 ,4 },{5 ,6 }};
int result = array [2 ][0 ];
int array [3 ][2 ] = {1 ,2 ,3 ,4 ,5 ,6 };
for (int i = 0 ; i<3 ; i++) {
for (int j = 0 ; j<2 ; j++) {
printf ("%d\n" ,array [i][j]);
}
}
int tmp[10 ] = {1 ,2 ,3 ,4 ,5 ,6 ,7 ,8 ,9 ,12 };
int array [10 ];
for (int i = 0 ; i<10 ; i++) {
array [i] = tmp[i];
}
1. 一个数组中有10 个元素,计算这10 个元素的和
int array [10 ] = {12 ,32 ,19 ,44 ,56 ,34 ,90 ,87 ,55 ,123 };
int eleCount = sizeof (array )/sizeof (int );
int sum = 0 ;
for (int i = 0 ; i<eleCount; i++) {
sum += array [i];
}
printf ("sum:%d\n" ,sum);
2. 将数组中的元素逆序打印
int array [10 ] = {12 ,32 ,19 ,44 ,56 ,34 ,90 ,87 ,55 ,123 };
int eleCount = sizeof (array )/sizeof (int );
for (int i = eleCount - 1 ; i>=0 ; i--) {
printf ("%d\n" ,array [i]);
}
3. 数组中有若干元素,打印两两相邻的元素之和,结果每⾏行3 个 打印输出
int array [10 ] = {12 ,32 ,19 ,44 ,56 ,34 ,90 ,87 ,55 ,123 };
for (int i = 0 ; i<9 ; i++) {
int result = array [i] + array [i+1 ];
printf ("result:%d " ,result);
if ((i+1 )%3 == 0 ){
printf ("\n" );
}
}
4. 查找数组中最⼤元素和最小元素,并同时输出其对应的下标