随机组卷按大纲配比:判断 8 · 单选 20 · 填空 10 · 综合 2(共 40 题 · 80 分)
- 判断int x[[3]={1,2,3,4,5,6,7},表示数组×是3行3列的数组。正确 错误做这题 →
- 判断int m[2][3]={0};表示数组 a 中只有数组元素 a[0][0]可得初始值 0。正确☑错误做这题 →
- 判断在C语言中,二维数组中元素排列的顺序是:按行存放,即在内存中先顺序存放第一行的元素,再dh放第二行的元素。正确错误做这题 →
- 判断在C语言中,二维数组元素在内存中的存放顺序可以随意调整变化。正确错误做这题 →
- 判断数组是一种构造型数据,即是若干相同类型的数据的集合。正确错误做这题 →
- 判断二维数组的下标可以是float数据类型。正确错误做这题 →
- 判断若有int a[3][4];则 a[3][4]是对二维数组的正确访问。正确错误做这题 →
- 判断若用数组名作为函数调用的实参,传递给形参的是数组中的第一个元素中的第一个元素的值。 ☑正确错误做这题 →
- 填空若有以下程序 #include <stdio.h> main() { char w[20], a[5][10]={"abcdef", "ghijkl", "mnopq", "rstuv", "wxyz"}; int p[6][2]={{0,1},{1,5},{0,0},{0,2},{1,4},{4,4}}, i; for (i=0; i<6; i++) w[i]=a[ p[i][0 ][ p[i][1] ]; puts(w); } 则程序的输出结果是做这题 →
- 填空有以下程序 #include <stdio.h> #define N 4 int fun( int a[][N] ) { int i,j,x=0; for(i=0;i<N;i++) for(j=0;j<N;j++) if (i == j) x += a[N-1-j][i]; return x; } main( ) { int x[N][N]={{1,2,3,4}, {5,6,7,8}, {9,10,11,12}, {13,14,15,17}}, y; y = fun(x); printf("%d\n",y); } 程序运行后的输出结果是做这题 →
- 填空有以下程序 main() {int aa[4][4]={{1,2,3,4},{5,6,7,8},{3,9,10,2},{4,2,9,6}}; int i,s=0; for(i=0;i<4;i++) s+=aa[i][1]; printf("%d\n",s); } 程序运行后的输出结果是____。做这题 →
- 单选设有: static char str[]=Non \log Sh; 则执行printf("%d\n",strlen(strcpy(str,"JiangSu")));后的输出结果为 o做这题 →
- 单选以下程序的输出结果是 C #include <stdio.h> #include <string.h> main(){ char b1[8]="goddwer",b2[8],*pb=b1+3; while(--pb>=b1) strcpy(b2,pb); printf("%d\n",strlen(b2)); }做这题 →
- 单选设有如下的程序段 char str[]="Hello"; char *ptr; ptr=str; 执行完上面的程序段后, \star ( \mathrm { p t r } + 5 ) 和 str[5]值为做这题 →
- 单选下面程序的输出是 char s[]="ABCD"; main() { char *p; for(p=s;p<s+4;p++) printf("%s\n",p); } ①ABCD ②A ③D ④ABCD BCD B C ABC CD C B AB D D A A做这题 →
- 单选有以下程序 main() {char c[]={'A','B','C','D','E','F','G','H','\0'}; n=sizeof(c);m=strlen(c); printf("%d,%d\n",n,m); } 程序运行后的输出结果是做这题 →
- 单选下列选项中正确的语句组是做这题 →
- 单选有以下程序 #include <string.h> main() { char p[]={'a','b','c'},q[10]={'a','b','c'}; printf("%d %d\n",strlen(p),strlen(q)); } 以下叙述中正确的是做这题 →
- 单选设有定义:char p∏={'1','2','3'},*q=p;,以下不能计算出一个 char型数据所占字节数的表达式是做这题 →
- 单选若有定义语句:char s[10]="1234567\0\0";,则strlen(s)的值是做这题 →
- 判断字符串指针实际是一个字符指针,指向字符串的第一个字符。正确错误做这题 →
- 判断字符串可以直接赋值给一维数组,如S1=”abc”。正确错误做这题 →
- 判断用 gets函数可以接收一个含有空格的字符串。正确错误做这题 →
- 判断字符数组中字符串可以整体输入输出。正确错误做这题 →
- 判断if(a==b)语句可用于判断两个字符串 a 和b是否相等。正确错误做这题 →
- 判断字符个数多的字符串比字符个数少的字符串大。正确错误做这题 →
- 判断字符'\0'是字符串结束标记,其ASCI值为0。正确错误做这题 →
- 判断字符串实质是一个一维字符数组。正确错误做这题 →
- 判断字符数组和字符指针的使用方法完全相同。正确错误做这题 →
- 填空当执行下面的程序时,如果输入ABC,则输出结果是 o #include "stdio.h" #include "string.h" main() { char str[20]="0123456"; scanf("%s", str);strcat(str,"789"); puts(str); }做这题 →
- 填空有以下程序 #include <string.h> main(){char *p="1234567\0890\0"; printf("%d\n",strlen(p)); } 程序运行后的输出结果是做这题 →
- 填空以下程序中函数f的功能是将n个字符串,按由小到小的顺序进行排序。 #include <string.h> void fun(char str[][12],int num) { char tmp[15]; int i,j; for(i=0;i<num-1;i++) for (j=i+1;j<num;j++) if(strcmp(str[i],str[j])>0) { strcpy(tmp,str[i]); strcpy(str[i],str[j]); strcpy(str[j],tmp);} } main() {char p[][12]={"abc","cdef","aabdef","dcdbe","aabd"}; fun(p,5); printf("%d\n",strlen(p[0])); system("pause"); }做这题 →
- 单选对长度为 n的线性表排序,在最坏情况下,比较次数不是n(n-1)/2的排序方法是做这题 →
- 判断对长度为8的线性表进行冒泡排序,最坏情况下需要比较的次数为56。正确错误做这题 →
- 填空在进行排序时,经常会用到交换变量值的算法,已知 int a,b,t;//a,b为要交换的变量;请写使用 C 语言实现交换语句 o做这题 →
- 填空交换变量值的算法,除了使用第个变量进行交换,还一种方法是直接在两个变量上操作进行交换,请写出相关语句做这题 →
- 综合函数 orderby是排序的功能,根据传入的 flag的值不同 ASC 升序,DESC 是降序。请根据已知代码完成空缺处代码填写。 #include <stdio.h> #define SWAP(A,B) A=A+B;B=A-B;A=A-B #define ARRLEN(arr) (sizeof(arr)/sizeof(arr[0])) #define DESC 1 //升序 #define ASC 0 //降序 void standby(int a[],int len,int flag); //选择排序 flag :ASC 升序, DESC 降序 void print(int a[], int len);//输出数组元素 int main() { int arr[] = { 789,345,20,34,234,12,0,134,567,56}; int length = ARRLEN(arr); printf("排序前:\n"); print(arr, length); standby(arr, length,DESC);//降序 printf("排序后:\n"); print(arr, length); return 0; } /* 实现数据的排序 flag: ASC 升序, DESC 降序 */ void standby(int a[], int len, int flag) { int m,i,j; for (i = 0; i < len - 1; i++) { m = i; for (j = i + 1; j < len ; j++) { if (!flag&&(__________) || ______&&(a[j] > a[m])) { m = j; } } if (__________) { ________(a[i], a[m]); } } } void print(int a[], int len) { int i; for (i = 0; i < len; i++) { printf("a[%d]=%d ", i, a[i]); } printf("\n"); system("pause"); }做这题 →
- 综合如下代码中bubble函数是冒泡排序实现代码,需要实现降序。冒泡的排序算法原理: 如果排序是升序,则从前面往后开始,依此比较相邻的两个元素的大小,较大的下沉,较小的上升。第一轮过后,最大的元素就放在最后一位了。第二轮过后,次大的元素排序到倒第二个,以此类推。 如果排序是降序,则从前面往后开始,依此比较相邻的两个元素的大小,较小的下沉,较大的上升。第一轮过后,最小的元素就放在最后一位了。第二轮过后,次小的元素就放在倒数第二位了,之后依此类推。 #include <stdio.h> #define SWAP(A,B) A=A+B;B=A-B;A=A-B #define ARRLEN(arr) (sizeof(arr)/sizeof(arr[0])) void bubble(int a[],int len);// 冒泡排序 void print(int a[], int len);//输出数组元素 int main() { int arr[] = { 789,345,20,34,234,12,0,134,567,56}; int length = ARRLEN(arr); printf("排序前:\n"); print(arr, length); bubble(arr, length); // 冒泡排序 printf("排序后:\n"); print(arr, length); return 0; } /* 实现数据的排序 (降序) */ void bubble(int a[],int len) { int i, j; for (i = 0; i < len - 1; i++) { for (j = 0; j < _______; j++) { if (__________) { ________; } } } } void print(int a[], int len) { int i; for (i = 0; i < len; i++) { printf("a[%d]=%d ", i, a[i]); } printf("\n"); system("pause"); }做这题 →
- 综合二分查找的基本思想是将n个元素分成大致相等的两部分,取a[n/2]与×做比较,如果x=a[n/2],则找到x,算法中止;如果 x<a[n/2],则只要在数组 a的左半部分继续搜索 x,如果 x>a[n/2],则只要在数组 a 的右半部搜索x。请补全以下代码。 #include <stdio.h> #include <stdlib.h> //二分查找,找不到返回-1,找到了返回元素值。 int binary_search(int list[],int len,int target){ int low = 0; int hight = len-1; int middle; while(low <= hight){ middle = ________; if(__________) printf("已找到该值,数组下标 为:%d\n",middle); return list[middle]; }else if(list[middle] > target){ hight = middle -1; }else if(list[middle] < target){ low = ________; } } printf("未找到该值"); return -1; } int main(){ int arr[] = {1,2,3,5,7,9,12,14,18,19,20}; int b = binary_search(arr,sizeof(arr)/sizeof(arr[0]),1); printf("要找的元素=%d\n",b); system("pause"); return 0; }做这题 →
- 单选avg 函数的功能是求整型数组中的前若干个元素的平均值,设数组元素个数最多不超过10,则下列函数说明语句错误的是做这题 →
- 单选设有以下程序段:int y; y=rand() % 25+1;则变量y 的取值范围是做这题 →
- 单选库函数rand0)的功能是产生一个在0~32767之间的随机数。若要用此函数随机产生一个0~99.99(2位小数)之间的数,以下能实现此要求的表达式是做这题 →
- 单选字符串处理函数比如 strcpy、strcmp、strlen等,若想使用这些函数,需要在程序文件中引用()做这题 →
- 单选abs(-4);表达式的结果是()做这题 →
- 单选10-pow(4,2)+fabs(-3.5);表达运行结果是()做这题 →
- 单选关于字符处理函数描述,错误的是()做这题 →
- 判断被main函数调用的函数只能是库函数。正确错误做这题 →
- 判断用户若需要调用标准库函数,调用前必须重新定义。正确错误做这题 →
- 判断用户可以重新定义标准库函数,但若如此该函数将失去原来的意义。正确错误 忘函数做这题 →
- 判断库函数 int strcmp(const char *s1, const char *s2);功能是两个字符串进行比较。若参数 s1 和 s2 字符串相同则返回 0,S1若大于 s2 则返回大于0的值,s1 若小于 s2 则返回小于0的值。正确 错误 函数做这题 →