读程序,写出程序运行的结果

  1.    1 #include <stdio.h>
       2 int dec(int *a) {
       3     return (*a)--;  
       4 }
       5 int inc(int a) {
       6     return a++;
       7 }
       8 main() {
       9     int x = 1, y;
      10     y = dec( &x );
      11     y = inc(x);
      12     printf("%d\n%d\n", x, y);
      13 
      14 }
    
  2.    1 #include <stdio.h>
       2 #define min(x,y) (((x)<(y))?(x):(y))
       3 #ifdef EOF
       4 #define square(x)  x*x
       5 #else
       6 #define square(x)  ((x)*(x))
       7 #endif
       8 int main() {
       9     int a = 1, b = 2;
      10     printf("%d\n", square(a+b));
      11     min(a++, b++);
      12     printf("%d\n ", min(a, b));
      13 }
    
  3.    1 #include <stdio.h>
       2 void selectsort(int v[], int n) {
       3     int i, j, min, temp;
       4     for( i = 0; i < n-1; i++) {
       5         min = i;
       6         for( j = i + 1; j < n; j++)
       7             if(v[j] < v[min])
       8                 min = j;
       9         temp = v[min];
      10         v[min] = v[i];
      11         v[i] = temp;
      12     }
      13 }
      14 int main() {
      15     int i;
      16     int s[] = { 5, 4, 3, 2, 1};
      17     selectsort(s, 5);
      18     for(i = 0; i < 5; i++)
      19         printf("%3d", s[i]);
      20 }
    
  4. 假定int, unsigned是32位的。

       1 #include <stdio.h>
       2 int bitcount(unsigned x) {
       3     int b;
       4     x = ~x;
       5     for(b = 0; x != 0; x >>= 1)
       6         if(x & 1)
       7             b++;
       8     return b;
       9 }
      10 main() {
      11     printf("%d\n%d\n%d\n", bitcount( ~ 0xA), bitcount(017), bitcount(255) );
      12 }
    
ch3n2k.com | Copyright (c) 2004-2020 czk.