亚洲v欧美v国产v在线成_制服丝袜中文字幕丝袜专区_一区二区三区韩国电影_激情欧美一区二区中文字幕

我要投稿 投訴建議

c 面試編程問題

時間:2022-09-25 17:44:56 面試試題 我要投稿
  • 相關(guān)推薦

c 面試編程問題

  1、輸出和為一個給定整數(shù)的所有組合

c 面試編程問題

  例如 n=5

  5=1+4;5=2+3(相加的數(shù)不能重復(fù))

  則輸出

  1,4;2,3。

  #include

  int main(void)

  {

  unsigned long int i,j,k;

  printf("please input the number\n");

  scanf("%d",&i);

  if( i % 2 == 0)

  j = i / 2;

  else

  j = i / 2 + 1;

  printf("The result is \n");

  for(k = 0; k < j; k++)

  printf("%d = %d + %d\n",i,k,i - k);

  return 0;

  }

  #include

  void main()

  {

  unsigned long int a,i=1;

  scanf("%d",&a);

  if(a%2==0)

  {

  for(i=1;i

  printf("%d",a,a-i);

  }

  else

  for(i=1;i<=a/2;i++)

  printf(" %d, %d",i,a-i);

  }

  2、遞規(guī)反向輸出字符串的例子,可謂是反序的經(jīng)典例程.

  void inverse(char *p)

  {

  if( *p = = '\0' )

  return;

  inverse( p+1 );

  printf( "%c", *p );

  }

  int main(int argc, char *argv[])

  {

  inverse("abc\0");

  return 0;

  }

  對 1 的另一種做法:

  #include

  void test(FILE *fread, FILE *fwrite)

  {

  char buf[1024] = {0};

  if (!fgets(buf, sizeof(buf), fread))

  return;

  test( fread, fwrite );

  fputs(buf, fwrite);

  }

  int main(int argc, char *argv[])

  {

  FILE *fr = NULL;

  FILE *fw = NULL;

  fr = fopen("data", "rb");

  fw = fopen("dataout", "wb");

  test(fr, fw);

  fclose(fr);

  fclose(fw);

  return 0;

  }

  3、用遞歸算法判斷數(shù)組 a[N]是否為一個遞增數(shù)組。

  遞歸的方法,記錄當前最大的,并且判斷當前的是否比這個還大,大則繼續(xù),否則返回 false結(jié)束:

  bool fun( int a[], int n )

  {

  if( n= =1 )

  return true;

  if( n= =2 )

  return a[n-1] >= a[n-2];

  return fun( a,n-1) && ( a[n-1] >= a[n-2] );

  }

http://fnhaliao.com/