<delect id="sj01t"></delect>
  1. <em id="sj01t"><label id="sj01t"></label></em>
  2. <div id="sj01t"></div>
    1. <em id="sj01t"></em>

            <div id="sj01t"></div>

            c 面試編程問題

            時間:2020-11-08 09:06:04 面試問題 我要投稿

            c 面試編程問題

            1、輸出和為一個給定整數的所有組合
            例如 n=5
            5=1+4;5=2+3(相加的數不能重復)
            則輸出
            1,4;2,3。
            #include <stdio.h>
            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 <stdio.h>
            void main()
            {
            unsigned long int a,i=1;
            scanf("%d",&a);
            if(a%2==0)
            {
            for(i=1;i<a/2;i++)
            printf("%d",a,a-i);
            }
            else
            for(i=1;i<=a/2;i++)
            printf(" %d, %d",i,a-i);
            }
            2、遞規反向輸出字符串的'例子,可謂是反序的經典例程.
            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 <stdio.h>
            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;
            }

            c 面試編程問題

            3、用遞歸算法判斷數組 a[N]是否為一個遞增數組。
            遞歸的方法,記錄當前最大的,并且判斷當前的是否比這個還大,大則繼續,否則返回 false結束:
            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] );
            }

            【c 面試編程問題】相關文章:

            一個C/C++編程面試題11-22

            計算機C語言編程問題分析論文06-21

            C語言編程練習11-23

            C語言編程題11-23

            c語言指針面試常見問題09-28

            面試中編程實例11-21

            考查C++/C程序員的基本編程技能11-25

            計算機程序c語言面試常見問題12-08

            C++和操作系統面試問題分類11-15

            C++面試常用問題:"引用"與指針的區別11-21

            <delect id="sj01t"></delect>
            1. <em id="sj01t"><label id="sj01t"></label></em>
            2. <div id="sj01t"></div>
              1. <em id="sj01t"></em>

                      <div id="sj01t"></div>
                      黄色视频在线观看