1. 编写算法,对 n 个关键字取整数值的记录序列进行整理,以使所有关键字为负值的记录排在关键字为非负值的记录之前,要求: (1) 采用顺序存储结构,至多使用一个记录的辅助存储空间; (2) 算法的时间复杂度为 O(n); void Divide(int a[ ],int n)// 把数组 a 中所有值为负的记录调到非负的记录之前 { low=0;high=n-1; while ( ) { while(low=0) high--; // 以 0 作为虚拟的枢轴记录 a[low]
以下程序的运行结果是 。 #include void main() { int a[]={0,2,5,8,12,15,23,35,60,65}; int x=15,i,n=10,m; i=n/2+1; m=n/2; while (m!=0) { if (xa[i]) { i=i+m/2+1; m=m/2; } else break; } printf(place=%d,i+1); }
有以下程序 main( ) { int k=5,n=0; do { switch(k) { case 1: case 3:n+=1;k--;break; default: n=0;k--; case 2: case 4:n+=2;k--;break; } printf(%d,n); }while(k>0 && n<5); }
有以下程序: #include int main() { int n=2,k=0; while(k++&&n++>2); printf(%d%d\n,k,n); return 0; }
设有以下程序,若要使程序的输出值为2,则应该从键盘给n输入的值是( )void main(){ int s=0,a=1,n;scanf(%d,&n);do{s=s+1;a=a-2;}while(a!=n);printf(%d ,s);}
3.下面程序的运行结果是( )。#include int main(void){int m=7,n=5,i=1;do{ if (i%m==0);if (i%n==0){ printf(\%d\\n\,i); break;}i++;} while(i!=0);return 0;}
1.编写算法,对n个关键字取整数值的记录序列进行整理,以使所有关键字为负值的记录排在关键字为非负值的记录之前,要求:(1)采用顺序存储结构,至多使用一个记录的辅助存储空间;(2)算法的时间复杂度为O(n);void Divide(int a[ ],int n)//把数组a中所有值为负的记录调到非负的记录之前{low=0;high=n-1;while( ){while(low=0) high--; //以0作为虚拟的枢轴记录a[low]a[high];while(lowa[high];}}//Divide
有以下程序,运行结果是______。#includevoid main(){ char a[10]={'6','1','*','4','*','9','*','0','*'}, *s=a;int n=0;while(*s<='9'&&*s>='0'){ n=10*n+*s-'0'; s++;}printf('%d ',n);}
#include main(){ int s=0,a=5,n;scanf(\%d\,&n);do { s+=1; a=a-2; }while(a!=n);printf(\%d,%d\\n\,s,a);}若输入的值1,运行结果为( )
05210032:下列程序段的运行结果是( )。int n=0; while(n++<3); printf(\%d\,n);
当运行以下程序时,从键盘输入1 2 3 4 5 -1,则下面程序的运行结果是 。#includemain(){int k=0,n;do{scanf(\%d\,&n);k+=n;}while(n!=-1);printf(\k=%d n=%d\\n\,k,n);}
以下程序的运行结果是 。#include void main(){int a[]={0,2,5,8,12,15,23,35,60,65};int x=15,i,n=10,m;i=n/2+1; m=n/2;while (m!=0){if (xa[i]){i=i+m/2+1;m=m/2;}else break;}printf(\place=%d\,i+1);}
下面程序的运行结果是( )。 #include int main() { int a,s,n,count;a=2;s=0;n=1;count=1; while(count<=7) { n=n*a;s=s+n;++count; } printf(“%d”,s); return 0; }
下面程序可以正确求出1+2+3+。。。+n的和。()#include int main( ){int i = 1,sum = 0,n;scanf(“%d”,&n);while (i <= n)sum = sum + i;++i;printf(\sum=%d\,sum);return 0;}
有以下程序段() int n,t=1,s=0; scanf("%d",&n); do{s=s+t;t=t-2;}while(t!=n); 为使此程序不陷入死循环,从键盘输入的数据应该是
有下列程序:main(){int k=5,n=0;do{switch(k){case 1: case 3:n+=1;k--;break;default:n=0;k--;Case 2: case 4;n+=2;k--;break;}printf("%d",n);}while(k>0 && n<5) ;}程序运行后的输出结果是()。
有以下程序include <stdio.h>int fun(char s[]){ int n=0;while(*s<=′9′&&*s>=′0′) {n=10*n+*s-′0′;s++;}return(n);}main(){ char s[10]={′6′,′1′,′*′,′4′,′*′,′9′,′*′,′0′,′*′};printf("%d\n",fun(s));}程序的运行结果是
从键盘输入1 2 3 4 5 -1 回车,则下面程序运行的结果是() include <stdio.h> int main(void) { int n, k = 0; while(scanf(“%d”,&n), n != -1) { k += n; } printf(“k=%d, n=%d”, k, n); return
有以下程序 main() { int s=0,a=1,n; seanf("%d",&n); do {s+=1;a=a-2;} while(a!=n); printf("%d\n",s); } 若要使程序的输出值为2,则应该从键盘给n输入的值是
有下列程序: main() { int k=5,n=0; do { switch(k) { case 1: case 3:n+=1;k--;break; default:n=0;k--; case2: case 4;n+=2;k--;break; } printf("%d",n); }while(k>0&&n<5); } 程序运行后的输出结果是()。
有以下程序:main(){int s=0,a=1,n;scanf("%d",&n); do{s+=1;a=a-2;}while(a!=n);printf("%d\
有下列程序:程序运行后的输出结果是()。main(){ int k=5 ,n=0;while(k>0){switch(k){dcfault :break;case 1 :n=n+k;case 2 :case 3 :n+=k;}k--;}printf("%d\n".n);}
有以下程序 include int fun(char s[]) {int n=0; while(*s<=9&&*s>=0){n=10*n+*s-o;s++;) return(n); } main {char s[10]={6,1,*,4,*,9,*, 0,*); printf("%d",fun(s)); } 程序运行的结果是()。
以下函数的功能是计算n!,请完善程序。 long mul(int n) { int i=1; long sum; if(n==0) return 1; else sum=1; while(i<=n) { sum= ; i++; } return sum; }