#include <stdio.h>
Main()
{ int i,j,m=1;
For{i=i;i<3;1++}
( For(j=3;j>0;j--)
{iF(i+j>3)Break;
m*=i*j;
}
}
PrintF(“m=%d\n”,m)
}
程序运行后的输出结果是
A.m=6
B.m=2
C.m=4
D.m=5
第1题
#include <stdio.h>
Main()
{ int i,j,m=1;
For{i=i;i<3;1++}
( For(j=3;j>0;j--)
{iF(i+j>3)Break;
m*=i*j;
}
}
PrintF(“m=%d\n”,m)
}
程序运行后的输出结果是
A.m=6
B.m=2
C.m=4
D.m=5
第2题
define N 4
void sort(int a[][N])
{ int i, j, k, t;
for (i=0; i<N;i++)
for (j=0; j<N-1:j++)
for (k= 【 13 】 ; k<N;K++)
/* 判断行下标是否为偶数来确定按升序或降序来排序 */
if ( 【 14 】 ? a[i][j]<a[i][k]); a[i][j]>a[i][k])
{ t = a[i][j];
a[i][j]=a[i][k];
a[i][k] = t;
}
}
void outarr(int a[N][N])
{ …… }
main()
{ int aa[N][N]={{2,3,4,1},{8,6,5,7},{11,12,10,9},{15,14,16,13}};
outarr(aa); /* 以矩阵的形式输出二维数组 */
sort(aa);
outarr(aa);
}
第3题
struct S {int n; int a[20];}; void f(struct S *P) {int i,j,t; for(i=0;in-1;i++) for(j=i+1;jn;j++) if(p->a[i]>p->a[j]) { t=p->a[i]; p->a[i]=p->a[j]; p->a[j]=t; } } main() {int i; struct S s={10,{2,3,1,6,8,7,5,4,10,9}}; f(&s); for(i=0;i printf(“%d”,s.a[i]); } 程序运行后的输出结果是( )。 A.1,2,3,4,5,6,7,8,9,10,
B.10,9,8,7,6,5,4,3,2,1,
C.2,3,1,6,8,7,5,4,10,9,
D.10,9,8,7,6,1,2,3,4,5,
第4题
写出程序运行输出结果
第5题
B、i <n-j+1>
C、i <n-1-j>
D、i <n-2-j>
第6题
【说明】
计算一个整数数组a的最长递增子序列长度的方法描述如下:
假设数组a的长度为n,用数组b的元素b[i]记录以a[i](0≤i<n)为结尾元素的最长
递增子序列的长度,则数组a的最长递增子序列的长度为器;其中b[i]满足最优子结构,可递归定义为:
【c代码】
下面是算法的c语言实现。
(1)常量和变量说明
a:长度为n的整数数组,待求其最长递增子序列
b:长度为n的数组,b[i]记录以a[i](0≤i<n)为结尾元素的最长递增子序列的长度,
其中0≤i<n
len:最长递增子序列的长度
i.j:循环变量
temp,临时变量
(2)C程序
include <stdio . h>
int maxL (int *b. int n) {
int i. temp =0;
For(i = 0; i < n; i++){
if (b[i] > temp )
Temp= b[i];
}
Return temp;
【问题l】(8分)
根据说明和C代码,填充C代码中的空(1)~(4)。
【问题2】(4分)
根据说明和C代码,算法采用了(5)设计策略,时间复杂度为(6)(用O符号表示)。
【问题3】(3分)
已知数组a={3,10,5,15,6,8},根据说明和C代码,给出数组b的元素值。
第7题
#include
main()
void f(char p[][10], int n ) /* 字符串从小到大排序 */
{ char t[10]; int i,j;
for(i=0;i
for(j=i+1;j
if(strcmp(p[i],p[j])>0) {strcpy(t,p[i]); strcpy(p[i],p[j]); strcpy(p[i],t); }
}
main()
{char p[5][10]={“abc”,”aabdfg”,”abbd”,”dcdbe”,”cd”};
f(p,5);
printf(“%d\n”,strlen(p[0]));
}
程序运行后的输出结果是( )。
A.2
B.4
C.6
D.3
第8题
#include<stdio.h>
void sort(int a[],int ll)
{ int i,j,t;
for(i=0;i<n-1;i++)
for(j=j+1+1;j<n;j++)
if(a[i]<a[j])
{t=a[i];a[i]=a[j];a[j]=t;
}
}
main( )
{ int a[10]={1,2,3,4,5,6,7,8,9,10},i;
sort(&a[1],7);
for(i=0;i<10;i++)printf("%d,",a[i]);
}
程序运行后的输出结果是( )。
A.1,2,3,4,5,6,7,8,9,10,
B.10,9,8,7,6,5,4,3,2,1,
C.1,8,7,6,5,4,3,2,9,10,
D.1,2,10,9,8,7,6,5,4,3,
第9题
【C 代码】 include < stdio.h> void quicksort(int a[] ,int n) { int i ,j; int pivot = a[0]; //设置基准值 i =0; j = n-l; while (i< j) { while (i<j &&(1)) j-- //大于基准值者保持在原位置 if (i<j) { a[i]=a[j]; i++;} while (i,j &&(2)) i++; //不大于基准值者保持在原位置 if (i<j) { a[j]=a[i]; j--;} } a[i] = pivot; //基准元素归位 if ( i>1) (3) ; //递归地对左子序列进行快速排序 if ( n-i-1>1 ) (4) ; //递归地对右子序列进行快速排序 } int main () { int i,arr[ ] = {23,56,9,75,18,42,11,67}; quicksort ( (5) ); //调用 quicksort 对数组 arr[ ]进行排序 for( i=0; i<sizeof(arr) /sizeof(int); i++ ) printf(" %d\t" ,arr[i]) ; return 0; }
第10题
A.beijing
B.china
C.welcome
D.tiananmen
为了保护您的账号安全,请在“上学吧”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!