算法的主要运算如下: While i<n do { s=0; While s<n do { s=s+1; } i=i+1; } 其中i的初值为0,s初值为0,“=”为赋值号。该算法的时间复杂度为()
A.O(2n)
B.O(n+log2n)
C.O(nlog2n)
D.O(n2)
第1题:
函数 void fun(float *sn, int n)的功能是:根据以下公式计算S,计算结果通过形参指针sn传回;n通过形参传入,n的值大于等于0。请填空。
void fun( float *sn, int n)
{ float s=0.0, w, f=-1.0;
int i=0;
for(i=0; i<=n; i++)
{ f=( )* f;
w=f/(2*i+1);
s+=w; }
( )=s;}
第2题:
有以下程序: #include<stdio.h> #include<string.h> void fun(char s[][10],int n) { char t;int i,j; for(i=0;i<n-1;i++) for(j=i+1;j<n;j++) /*比较字符串的首字符大小,并交换字符串的首字符*/ if(s[i][0]>s[j][0]){t=s[i][0];s[i][0]=s[j][0];sEj][0]=t;} } main() {char s[5][10]={"bcc","bbcc","xy","aaaacc","aabcc"); fun(ss,5);printf("%s,%s\n",ss[0],ss[4]); } 程序的运行结果是( )。
A.xy,aaaacc
B.aaaacc,xy
C.xcc,aabcc
D.acc,xabcc
第3题:
如下程序显示的结果是 ( )。
s=1
i=0
do while i<8
s=s+i
i=i+2
end do
s
13
第4题:
程序段s=i=0;do{i=i+1;s=s+i;}while(i=n);的时间复杂度为()。
A、O(n)
B、O(nlog2n)
C、O(n)
D、O(n/2)
第5题:
有如下程序,运行输出的结果是 ______ 。 s=0 Do s=(s+1)*(s+2) n=n+1 Loop Until s>=30 Print n; s
A.0 1
B.30 30
C.4 30
D.3 182
第6题:
如下程序显示的结果是 S=1 i=0 do while i<8 s=s+i i=i+2 enddo?s
第7题:
(30)设有定义:char s[81];int i=10;,以下不能将一行(不超过80个字符)带有空格的字符串真确读入的语句或语句组是
A gets(s)
B)while((s[i++]=getchar())!=”\n”;s=”\0”;
C)scanf(“%s”,s);
D)do{scanf(“%c”,&s);}while(s[i++]!=”\n”);s=”\0”;
第8题:
设有定义 :char s[81];int i=0;, 以下不能将一行 ( 不超过 80 个字符 ) 带有空格的字符串正确读入的语句或语句组是
A)gets(s);
B)while((s[i++]=getchar())!= ' \n ' );s[i]='\0';
C)scanf("%s",s);
D)do{scanf("%c",&s[i]);}while(s[i++]!='\n');s[i]='\0';
第9题:
有以下程序 main( ) { int i=0,s=0; do{ if(i%2){i++;continue;} i++; s+=i; } while(i<7); printf("%d\n",s); } 执行后输出的结果是
A.16
B.12
C.28
D.21
第10题:
算法的主运算如下,其中i的初值为1,s的初值为0,“←”为赋值号。 while i<n do { for j←1 to n do s←s+a[i,j] i←i*2; 则该算法的时间复杂度为 ( )
A.O(2n)
B.O(n+log2n)
C.O(nlog2n)
D.O(n2)