为了正常的体验网站,请在浏览器设置里面开启Javascript功能!
首页 > 达内C++培训第一次月考(附答案)

达内C++培训第一次月考(附答案)

2013-10-24 24页 doc 713KB 108阅读

用户头像

is_882430

暂无简介

举报
达内C++培训第一次月考(附答案)考试场次:2013_07月考_7月31日_3G/C++/.NET/PHP/嵌入式 试卷名称:2013年07月_C++_CSD/ESD1306 1. 阅读如下代码,函数sort是一种排序的算法: void sort(int* a, int n){     for(int i=1; i0&&a[j-1]>t; j--){              a[j] = a[j-1];         }         a[j] = t;     } } 请问sort函数排序的算法是: A. 冒泡排序 B. 快速排序  C....
达内C++培训第一次月考(附答案)
考试场次:2013_07月考_7月31日_3G/C++/.NET/PHP/嵌入式 试卷名称:2013年07月_C++_CSD/ESD1306 1. 阅读如下代码,数sort是一种排序的算法: void sort(int* a, int n){     for(int i=1; i0&&a[j-1]>t; j--){              a[j] = a[j-1];         }         a[j] = t;     } } 请问sort函数排序的算法是: A. 冒泡排序 B. 快速排序  C. 选择排序 D. 插入排序 正确答案:D 2. 查看如下代码: int a[5] = {1,2,3,4,5}; int *ap = a; int i = 0; 下列代码中,不可以成功打印出数组元素的是: A. for(;i<5;i++){   printf(“%d\n”,a[i]); } B. for(;i<5;i++){   printf(“%d\n”,*a++); } C. for(;i<5;i++){   printf(“%d\n”,ap[i]); } D. for(;i<5;i++){   printf(“%d\n”,*ap++); } 正确答案:B 3. 下列关于字符串的代码正确的是: A. char *st1 = "ABCDE"; st1 =  "abcdefg"; B. char *st1 = "ABCDE"; st1[0] = ‘a’; C. char st1[] = "ABCDE"; st1[5]=’a’; D. char st1[] = "ABCDE"; st1=”abcde”; 正确答案:A 4. 阅读如下代码,函数sort是一种排序的算法: void sort(int* a, int n){    for(int i=0; ia[j+1]){          int t = a[j];          a[j] = a[j+1];          a[j+1] = t;          flag = false;          }       }       if(flag)  break;   } } 请问sort函数排序的算法是: A. 冒泡排序 B. 快速排序 C. 选择排序 D. 插入排序 正确答案:A 5. -80转换成二进制的结果是: A. 1011 0000 B. 0101 0000 C. 1101 0001 D. 1010 1111 正确答案:A 6. 在C语言中调用函数f1,当f1函数执行完毕后,哪个变量的内存没有被回收? int a = 1000; void f1(int b){     b = 10;     int c = 20;     static int d = 30; } A. 只有a B. Abcd都没有回收 C. 只有d D. ad 正确答案:D 7. 命令chmod 644 myfile将myfile文件的权限设置为? A. 属主用户可读可执行,同组和其它用户可读 B. 属主用户可读可写,同组和其它用户可读 C. 属主用户可写可执行,同组和其它用户可执行 D. 属主和同组用户可读,其它用户可读可写 正确答案:B 8. 查看如下代码: int a[5] = {1,2,3,4,5}; int *ap = a; int i = 0; 下列代码中,不可以成功打印出数组元素的是: A. for(;i<5;i++){   printf(“%d\n”,a[i]); } B. for(;i<5;i++){   printf(“%d\n”,*a++); } C. for(;i<5;i++){   printf(“%d\n”,ap[i]); } D. for(;i<5;i++){   printf(“%d\n”,*ap++); } 正确答案:B 9. 关于预处理指令,以下说法正确的是: A. #include可以包含文件,文件名必须用<>括起来 B. #define可以定义宏,宏一旦定义,就无法取消 C. #ifndef、#ifdef都可以用于条件编译 D. #elseif 可以用于条件编译 正确答案:C 10. 以下代码 int x = 1; x = x++ + ++x; printf ("%d\n", x); 的输出是? A. 2 B. 3 C. 4 D. 5 正确答案:D 11. 关于预处理指令,以下说法正确的是: A. #include可以包含文件,文件名必须用<>括起来 B. #define可以定义宏,宏一旦定义,就无法取消 C. #ifndef、#ifdef都可以用于条件编译 D. #elseif 可以用于条件编译 正确答案:C 12. 根据下列 变量的类型以及函数参数类型,选出正确的sizeof的结果: 注意:选项给出结果的顺序是按照圆序号的顺序排列的。 char  str[] = “Hello”;  sizeof(str) = ① char   *p = str ;  sizeof(p) = ② int     n = 10;   sizeof(n) = ③ void Func ( char str[100]) {  sizeof( str ) = ④ } void *p = malloc( 100 ); sizeof ( p ) = ⑤   A. 5  4  4  100  100 B. 5  4  4  4   4 C. 6  4  4  100  100 D. 6  4  4  4  4 正确答案:D 13. C语言中,以下程序的输出结果为: int a = 3; printf(“%d\n”,sizeof( (a>2)?1:9.0 ) ); A. 1 B. 2 C. 4 D. 8 正确答案:D 14. 阅读如下List的代码: #include  #include  using namespace std; typedef int T; class List{     struct Node{          T data;         Node* next;         Node(const T& d):data(d),next(){}     }; Node* head;//头指针 int sz;//元素个数 public:      void fun(const T& d){          Node* pn = new Node(d);          if(head==NULL){              head = pn; sz++; return;          }         Node* p = head;         while(p->next){ p = p->next; }         p->next = pn;         sz++;    } } 请问,fun函数实现的功能是: A. 删除元素 B. 任意位置插入元素 C. 最后位置追加元素 D. 修改元素 正确答案:C 15. 以下代码 int a, b; for (a = 0, b = 0; a <= 1 && ! b++; a++)     a++; printf ("%d %d\n", a, b); 的输出是? A. 2 2 B. 2 1 C. 0 1 D. 1 2 正确答案:B 16. int i=10; printf(“%d  ”,sizeof(i=5)); printf(“%d\n”,i); 上面的代码执行完毕后,打印出的数字应该为: A. 4   5 B. 10  5 C. 10  10 D. 4  10 正确答案:D 17. 关于预处理指令,以下说法正确的是: A. #elseif主要用于条件编译 B. #if和#endif经常结合使用,用于条件编译 C. #include可以包含文件,但是只能包含.h文件 D. #define可以用于定义宏变量和宏函数,定义宏以后就不能撤销 正确答案:B 18. FILE *fpr = fopen("a.txt","r"); FILE *fpw = fopen("c.txt","w+"); int ch; while(1){     ch = getc(fpr);     if(ch == EOF)          break;     _______________________________ } fclose(fpr);fpr = NULL; fclose(fpw);fpw = NULL; 上述代码是进行文件拷贝的,在横线处需要填入一行代码,下列选项哪个是对的: A. fwrite(ch,fpw); B. fprintf(ch,fpw); C. putc(ch,fpw); D. fputs(ch,fpw); 正确答案:C 19. C语言中,以下程序的输出结果为: int a = 5; switch(a){   case 5:      printf(“A”);   case 4: printf(“B”);   case 3:     printf(“C”); }  printf(“\n”); A. 没有default分支,编译失败 B. 输出A C. 输出AB D. 输出ABC 正确答案:D 20. FILE *fpr = fopen("a.txt","r"); FILE *fpw = fopen("c.txt","w+"); int ch; while(1){     ch = getc(fpr);     if(ch == EOF) break;     ___________________________________ } fclose(fpr);fpr = NULL; fclose(fpw);fpw = NULL; 上述代码是进行文件拷贝的,在横线处需要填入一行代码,下列选项哪个是对的: A. fwrite(ch,fpw); B. fprintf(ch,fpw); C. putc(ch,fpw); D. fputs(ch,fpw); 正确答案:C 21. 以下代码 char c = 200; printf ("%d\n", c); 的输出是? A. 200 B. 56 C. -56 D. -55 正确答案:C 22. 关于硬链接和软链接,以下说法正确的是? A. 硬链接亦称符号链接,其本质就是在一个文件中保存另一个文件的路径信息 B. 通过ls –l命令可以查看一个文件的软链接数 C. 通过ln –s命令可以创建一个文件的硬链接 D. 硬链接的本质就是同一份文件数据与多个不同的文件路径相关联 正确答案:D 23. 完全数,亦称完美数或完备数,是一些特殊的自然数,其全部真因数(即除自身以外的约数)之和等于其自身。以下代码意在打印给定范围内的完全数: int min, max; scanf ("%d%d", &min, &max); for (int i = min; i <= max; i++) { (空白处) } 其中空白处可以填入的代码是? A. int sum = 0; for (int j = 1; j <= i / 2; j++)     if (i % j == 0)         sum += j; if (sum == i)     printf ("%d\n", i); B. int sum = 0; for (int j = 1; j < i / 2; j++)     if (i % j == 0)         sum += j; if (sum == i)     printf ("%d\n", i); C. int sum = 0; for (int j = 1; j <= i / 2; j++)     if (i % j != 0)         sum += j; if (sum == i)     printf ("%d\n", i); D. int sum = 0; for (int j = 1; j <= i / 2; j++)     if (i % j == 0)         sum += j; if (sum != i)     printf ("%d\n", i); 正确答案:A 24. 以下代码意在借助于栈的数据结构,实现一个将任意十进制整数以任意进制的格式打印输出的函数printb(): class Stack { public: Stack (void) : m_top (0) {} bool push (char ch) { if (m_top >= sizeof (m_chs) / sizeof (m_chs[0])) return false; m_chs[m_top++] = ch; return true; } bool pop (char& ch) { if (m_top <= 0) return false; ch = m_chs[--m_top]; return true; } private: char m_chs[128]; size_t m_top; }; void printb (unsigned int dec, int base) { Stack stack; do { (空白处) } while (dec /= base); for (char ch; stack.pop (ch); cout << ch); cout << endl; } 其中空白处可以填入的代码是? A. stack.push (dec % base); B. stack.push (dec % base + '0'); C. stack.push (dec % base – 10 + 'A'); D. int mod = dec % base; stack.push (mod < 10 ? mod + '0' : mod - 10 + 'A'); 正确答案:D 25. C语言中,下列定义数组的代码正确的是: A. int arr[]; B. int arr[]={}; C. int[] arr; D. int arr[]=”abcd”; 正确答案:B 26. 以下代码意在产生10个1到100之间的随机数,并将其按从小到大的顺序打印: int a[100] = {0}, i, j; (空白处) for (i = 0; i < 100; i++)     for (j = 0; j < a[i]; j++)         printf ("%d\n", i + 1); 其中空白处可以填入的代码是? A. for (i = 0; i < 100; i++)     a[rand () % 100]++; B. for (i = 0; i < 10; i++)     a[rand () % 10]++; C. for (i = 0; i < 100; i++)     a[rand () % 10]++; D. for (i = 0; i < 10; i++)     a[rand () % 100]++; 正确答案:D 27. 已知,有int a1,a2,a3,a4,a5,e;那么以下代码的功能是? e = a1; if(e='0')&&(*s1<='9')){          int j = *s1-'0';          res = res*10 + j;          s1++;       }else{break;}    }    *s2 = s1;    return res; } B. int split(char *s1,char *s2){    int res = 0;    for(;;){       if((*s1>='0')&&(*s1<='9')){          int j = *s1-'0';          res = res*10 + j;          s1++;       }else{break;}    }    s2 = s1;    return res; } C. int split(char *s1){    int res = 0;    for(;;){       if((*s1>='0')&&(*s1<='9')){           int j = *s1-'0';             res = res*10 + j;             s1++;     }else{break;}   }    return res; } D. 以上代码都不对 正确答案:A 30. C语言中,下列随机数的实现代码中,哪个是正确的? A. srand(time(0)); int ran = rand(); B. rand(time(0)); int ran = srand(); C. srand(0); int ran = rand(); D. srand(0); int ran = rand(time(0)); 正确答案:A 31. FILE *fpr = fopen("a.txt","r"); FILE *fpw = fopen("c.txt","w+"); int ch; while(1){        ch = getc(fpr);        if(ch == EOF) break;        ___________________________________ } fclose(fpr);fpr = NULL; fclose(fpw);fpw = NULL; 上述代码是进行文件拷贝的,在横线处需要填入一行代码,下列选项哪个是对的: A. fwrite(ch,fpw); B. fprintf(ch,fpw); C. putc(ch,fpw); D. fputs(ch,fpw); 正确答案:C 32. #ifndef _TEXT_H_ #define _TEXT_H_ #include  #endif 上面代码的主要作用是什么?: A. 定义宏_TEXT_H_ B. 包含text.h C. 这种写法意义不大,没什么作用 D. 用条件编译防止text.h被多次包含 正确答案:D 33. 对一个算法的评价,不包括下列( )方面的内容。 A. 健壮性和可读性 B. 并行性 C. 正确性 D. 时空复杂度 正确答案:B 34. 求最大值的宏函数最佳定义代码为: A. #define MAX(x, y)  (x>y?x:y) B. #define MAX(x, y)  ((x)>(y)?(x):(y)) C. #define MAX(x, y)  (x  cch B. len + blanks * 2 > cch C. len + blanks + 1 > cch D. len + blanks * 3 + 1 > cch 正确答案:A (3). 空白处3可以填入的代码是? A. 0 <= j && j < i B. 0 <= i && 0 <= j C. 0 < i && i <= j D. 0 <= i && i < j 正确答案:D (4). 空白处4可以填入的代码是? A. 空 B. psz[i] = ' ' C. psz[i] = psz[j] D. psz[j] = psz[i] 正确答案:D (5). 空白处5可以填入的代码是? A. psz[j++] = '%'; psz[j++] = '2'; psz[j] = '0' B. psz[j--] = '0'; psz[j--] = '2'; psz[j] = '%' C. psz[j] = '%'; psz[j++] = '2'; psz[j++] = '0' D. psz[j] = '0'; psz[j--] = '2'; psz[j--] = '%' 正确答案:B _1444077873.unknown _1444077906.unknown _1444077922.unknown _1444077930.unknown _1444077934.unknown _1444077936.unknown _1444077937.unknown _1444077935.unknown _1444077932.unknown _1444077933.unknown _1444077931.unknown _1444077926.unknown _1444077928.unknown _1444077929.unknown _1444077927.unknown _1444077924.unknown _1444077925.unknown _1444077923.unknown _1444077914.unknown _1444077918.unknown _1444077920.unknown _1444077921.unknown _1444077919.unknown _1444077916.unknown _1444077917.unknown _1444077915.unknown _1444077910.unknown _1444077912.unknown _1444077913.unknown _1444077911.unknown _1444077908.unknown _1444077909.unknown _1444077907.unknown _1444077890.unknown _1444077898.unknown _1444077902.unknown _1444077904.unknown _1444077905.unknown _1444077903.unknown _1444077900.unknown _1444077901.unknown _1444077899.unknown _1444077894.unknown _1444077896.unknown _1444077897.unknown _1444077895.unknown _1444077892.unknown _1444077893.unknown _1444077891.unknown _1444077882.unknown _1444077886.unknown _1444077888.unknown _1444077889.unknown _1444077887.unknown _1444077884.unknown _1444077885.unknown _1444077883.unknown _1444077878.unknown _1444077880.unknown _1444077881.unknown _1444077879.unknown _1444077876.unknown _1444077877.unknown _1444077874.unknown _1444077808.unknown _1444077841.unknown _1444077857.unknown _1444077865.unknown _1444077869.unknown _1444077871.unknown _1444077872.unknown _1444077870.unknown _1444077867.unknown _1444077868.unknown _1444077866.unknown _1444077861.unknown _1444077863.unknown _1444077864.unknown _1444077862.unknown _1444077859.unknown _1444077860.unknown _1444077858.unknown _1444077849.unknown _1444077853.unknown _1444077855.unknown _1444077856.unknown _1444077854.unknown _1444077851.unknown _1444077852.unknown _1444077850.unknown _1444077845.unknown _1444077847.unknown _1444077848.unknown _1444077846.unknown _1444077843.unknown _1444077844.unknown _1444077842.unknown _1444077825.unknown _1444077833.unknown _1444077837.unknown _1444077839.unknown _1444077840.unknown _1444077838.unknown _1444077835.unknown _1444077836.unknown _1444077834.unknown _1444077829.unknown _1444077831.unknown _1444077832.unknown _1444077830.unknown _1444077827.unknown _1444077828.unknown _1444077826.unknown _1444077817.unknown _1444077821.unknown _1444077823.unknown _1444077824.unknown _1444077822.unknown _1444077819.unknown _1444077820.unknown _1444077818.unknown _1444077813.unknown _1444077815.unknown _1444077816.unknown _1444077814.unknown _1444077810.unknown _1444077812.unknown _1444077809.unknown _1444077776.unknown _1444077792.unknown _1444077800.unknown _1444077804.unknown _1444077806.unknown _1444077807.unknown _1444077805.unknown _1444077802.unknown _1444077803.unknown _1444077801.unknown _1444077796.unknown _1444077798.unknown _1444077799.unknown _1444077797.unknown _1444077794.unknown _1444077795.unknown _1444077793.unknown _1444077784.unknown _1444077788.unknown _1444077790.unknown _1444077791.unknown _1444077789.unknown _1444077786.unknown _1444077787.unknown _1444077785.unknown _1444077780.unknown _1444077782.unknown _1444077783.unknown _1444077781.unknown _1444077778.unknown _1444077779.unknown _1444077777.unknown _1444077760.unknown _1444077768.unknown _1444077772.unknown _1444077774.unknown _1444077775.unknown _1444077773.unknown _1444077770.unknown _1444077771.unknown _1444077769.unknown _1444077764.unknown _1444077766.unknown _1444077767.unknown _1444077765.unknown _1444077762.unknown _1444077763.unknown _1444077761.unknown _1444077752.unknown _1444077756.unknown _1444077758.unknown _1444077759.unknown _1444077757.unknown _1444077754.unknown _1444077755.unknown _1444077753.unknown _1444077748.unknown _1444077750.unknown _1444077751.unknown _1444077749.unknown _1444077743.unknown _1444077745.unknown _1444077746.unknown _1444077744.unknown _1444077739.unknown _1444077741.unknown _1444077742.unknown _1444077740.unknown _1444077737.unknown _1444077738.unknown _1444077736.unknown _1444077734.unknown
/
本文档为【达内C++培训第一次月考(附答案)】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
热门搜索

历史搜索

    清空历史搜索