搜题
章节测试答案
学历考试
继续教育
网课答案
网课答案全集
登录
注册
请在
下方输入
要搜索的题目:
搜 索
立 即 搜 题
设n为正整数,给出下面算法关于n的时间复杂度。void fun1(int n) { int i=1,k=100; while (i
算法
整数
复杂度
发布时间:
2024-06-22 15:23:41
首页
期末考试答案
推荐参考答案
(
由 搜题小帮手 官方老师解答 )
联系客服
答案:
以下文字与答案无关
提示:有些试题内容 显示不完整,文字错误 或者 答案显示错误等问题,这是由于我们在扫描录入过程中 机器识别错误导致,人工逐条矫正总有遗漏,所以恳请 广大网友理解。
查看参考答案
相关试题
1.
给出以下算法的空间复杂度。void func(int n){ int i=1,k=100; while (i<=n) { k++; i+=2; }}
2.
void fun( int n) { int i=1, k=100; while (i<=n) {k++; i+=2;}}选项: A:O(n); B:O(); C:O(log2n) ; D:O(nlog2n)
3.
分析以下代码的时间复杂度:int func(int n) { int i=1, k=0; while(i k++; i=i*2; } return k;}选项: A:O(n) B:O(logn) C:O(n^2) D:O(n/2)
4.
下列程序段的时间复杂度为 。i=1;k=0;n=100;do{ k=k+10*i; i=i++;}while(i!=n);
5.
void maxmin(int A[],int n,int &max,int &min) { int i;min=min=A[0];for (i=1;i
max) max=A[i];if (A[i]
6.
以下算法是一个排序算法,请完成:(1)哪个语句是基本操作语句(执行频率最高的语句)?(2)基本操作语句的执行次数是多少次?(3)该算法的时间复杂度是多少?void sort(int b[], int n) { int i, j, k; for (i=1; i<=n-1; i++) { k = i; for (j=i+1; j<=n; j++) if (b[k] > b[j]) k = j; x = b[i]; b[i] = b[k]; b[k] = x; } }
7.
下列程序的输出结果是( )。int main(void){ int n[3],i,j,k;for(i=0;i<3;i++) n[i]=0;k=2;for (i=0;i
8.
以下代码片段,时间复杂度最高的是 选项: A、for(int i = 1; i <= n; i++) { dosomething(); } B、for(int i = 1; i <= n; i++) { for(int j = 1; j <= n; j++) { dosomething(); } } C、for(int i = 1; i <= n; i++) { for(int j = 1; j <= i; j++) { dosomething(); } } D、for(int i = 1; i <= n; i++) { for(int j = 1; j <= i; j++) { for(int k = 1; k <= n; j++) { dosomething(); } } }
j) j++; } }while (i
=(y+1)*(y+1)) while (y>0) y++; if (x>100){ x=x-10;y--; } else x++; ">
9.
设n为正整数,利用大"O"记号,将下列程序段的执行时间表示为n的函数,即为 、 、 、 、 。 (1) i=1;k=0; (2) i=0;k=0; (3) i=1;j=0; while (i
j) j++; } }while (i
=(y+1)*(y+1)) while (y>0) y++; if (x>100){ x=x-10;y--; } else x++;
10.
以下程序段的输出结果是( )。int main(void) { int i,n,s,k,count = 0; n=125; for(i = 100;i < n;i++) { s=0;k=i; while(k>0) { s+=k%10; k=k/10; } if(s!= 8) continue; else count++; } printf(" count = %d",count); return 0;} 选项: A、 count= 1 B、 count=2 C、 count=3 D、 count=4
11.
以下程序的输出结果是 。#include
using namespace std;int fun(int k){ static int m=1; int n=2; m=k+m+n++; return m;}void main( ){ for(int i=0; i<3; i++) cout<
12.
有如下程序的输出结果是( )。#include
void main(){ int n[5]={0,0,0},i,k=2;for(i=0;i
0;j--)x[j] = x[j-1];x[0]=k;}}">
13.
运行以下程序,输入“6 5 4 3 2 1”,写出程序运行结果。#include
void fun(int *x, int n, int m);int main(void){int a[6], i;for(i=0;i<6;i++)scanf("%d", &a[i]);fun(a,6,3);for(i=0;i<5;i++)printf("%d#",a[i]);printf("%d",a[i]);return 0;}void fun(int *x, int n, int m){int i,j,k;for(i=1;i<=m;i++){k=x[n-1] ;for(j=n-1;j>0;j--)x[j] = x[j-1];x[0]=k;}}
14.
#include
int main( ) { int i,k,n; printf("input n:"); scanf("%d",&n); printf(""); for(i=1; i<=n;i++) { for(k=0; k
-1 && x < a[j]) { a[j+1] = a[j]; j--; } a[j+1] = x; } }} int main(){ int a[N] = {3,1,7,5}; InsertSort(a,N); print(a,N); return 0;}选项: A:1357; B:3157; C:1375; D:7531">
15.
下列程序的输出结果为( )。#include
#define N 4void print(int a[], int n);void InsertSort(int a[], int n);void print(int a[], int n){ int j; for(j=0; j
-1 && x < a[j]) { a[j+1] = a[j]; j--; } a[j+1] = x; } }} int main(){ int a[N] = {3,1,7,5}; InsertSort(a,N); print(a,N); return 0;}选项: A:1357; B:3157; C:1375; D:7531
16.
有以下程序:#include [stdio.h] #include [math.h] int main() { int n,i,k; scanf("%d",&n); k=(int)sqrt(n); for(i=2;i<=k;i++) if(n%i==0) break; if(i
17.
填空使得以下程序可以打印出所有的“水仙花数”。“水仙花数”是指一个三位数,其各位数字的立方和等于该数本身。例如:153 = 1^3+5^3+3^3 ,所以153就是一个“水仙花数”。#include
int main(){ int i, j, k, n; printf("水仙花数如下\n"); for (n=100; ___(1)_____; n++) { i = n / 100; //i = 百位数 j = ____(2)________; //j = 十位数 k = _____(3)_______; //k = 个位数 if (_(4)_) { printf("%d ",n); } } printf("\n"); return 0;}选项: A:(1) n<1000(2) (n - i * 100) / 10(3)n % 10(4)n== i*i*i+j*j*j+k*k*k; B:(1) n<=1000(2) (n - 100i) / 10(3)n % 10(4)100i+10kj == i*i*i+j*j*j+k*k*k; C:(1) n<=1000(2)n % 100(3)n / 10(4)100*i + 10*k + j == i*i*i+j*j*j+k*k*k; D:(1) n<=1000(2) n % 100 /10(3)n % 10(4)n = i*i*i+j*j*j+k*k*k
a[k] B:a[j]
a[k] D:a[i]
18.
下面程序的功能是利用选择法对20个整数进行由小到大排序,并输出排序后的结果。请在【1】处填空。#include "stdio.h"#define N 20main( ){ int i,j,k,temp,a[N]; for(i=0;i
a[k] B:a[j]
a[k] D:a[i]
19.
下面程序的输出结果是( )。Θ#include Int main ( ){ int k=1; int n=463; while(n) { k=k*(n%10); n=n/10; } printf("%d\n",k); return 0;} 选项: A:13 B:36 C:72 D:14
20.
运行以下程序,输入100,其输出结果是5050。#include
void func(int n){ int i; for (i=n-1;i>=1;i--) n=n+i; printf("n=%d\n",n);}void main(){ int n; printf("输入n:"); scanf("%d",&n); func(n); printf("n=%d\n",n);}选项: A:正确; B:错误
用户中心
登录
没有账号?
点我注册
热门标签
湿软
讥讽
智牙
指印
建筑家
集合起来
阿尔巴尼亚
维修工
用旧
不论怎么
登录 - 搜题小帮手
登录
立即注册
已购买搜题包,但忘记账号密码?
登录即同意
《服务协议》
及
《隐私政策》
注册 - 搜题小帮手
确认注册
立即登录
登录即同意
《服务协议》
及
《隐私政策》
购买搜题卡查看答案
购买前请仔细阅读
《购买须知》
体验
30天体验包
¥
5.99
无赠送,体验一下
查看100次答案
推荐
半年基础包
¥
9.99
畅享300次搜题
查看300次答案
随心用
超值包一年
¥
29.99
超值包,一万次搜题
查看10000次答案
月卡
月卡
¥
19.99
30天无限搜题
查看30天答案
请选择支付方式
已有帐号 点我登陆
微信支付
支付宝扫码
请输入您的手机号码:
点击支付即表示同意并接受了
《服务协议》
和
《购买须知》
填写手机号码系统自动为您注册
立即支付
我们不保证100%有您要找的试题及正确答案!请确保接受后再支付!
联系客服
找回账号密码
微信支付
订单号:
1111
遇到问题请
联系客服
恭喜您,购买搜题卡成功
系统为您生成的账号密码如下:
账号
密码
重要提示:
请勿将账号共享给其他人使用,违者账号将被封禁。
保存账号查看答案
请不要关闭本页面,支付完成后请点击【支付完成】按钮
支付完成
取消支付
遇到问题请联系
在线客服