Dotcpp   >   练题 - 第227页

全部知识点

第4521题

若有以下程序

#include <stdio.h>
void fun(int a[],int n)
 {
 int t,i,j;
 for(i=1;ia[j])
 {
 t=a[i];
 a[i]=a[j];
 a[j]=t;
 }
 }
 main()
 {
 int c[10]={10,9,8,7,6,5,4,3,2,1},i;
 fun(c,10);
 for(i=0;i<10;i++)printf("%d,",c[i]);
 printf("\n");
 }

则程序的输出结果是(  )。

第4522题

以下程序中函数f的功能是:当flag为1时,进行由小到大排序;当flag为0时,进行由大到小排序。

#include <stdio.h>
 void f(int b[],int n,int flag)
 {
 int i,j,t;
 for(i=0;i<n-1;i++)
 for(j=i+1;j<n;j++)
 if(flag?b[i]>b[j]:b[i]<b[j])
 {
 t=b[i];
 b[i]=b[j];
 b[j]=t;
 }
 }
 main()
 {
 int a[10]={5,4,3,2,1,6,7,8,9,10},i;
 f(&a[2],5,0);
 f(a,5,1);
 for(i=0;i<10;i++)
 printf("%d,",a[i]);
 }

程序运行后的输出结果是(  )。

第4523题

有以下程序:

#include <stdio.h>
void f(int *p);
 main()
 {
 int a[5]={1,2,3,4,5},*r=a;
 f(r);
 printf("%d\n",*r);
 }
 void f(int *p)
 {
 p=p+3;
 printf("%d,",*p);
 }

程序运行后的输出结果是(  )。

第4524题

有以下程序

#include <stdio.h>
void f(int *q)
 {
 int i=0;
 for(;i<5;i++)(*q)++;
 }
 main()
 {
 int a[5]={1,2,3,4,5},i;
 f(a);
 for(i=0;i<5;i++)
 printf("%d,",a[i]);
 }

程序运行后的输出结果是(  )。

第4525题

有以下程序:

#include <stdio.h>
 #define N 8
 void fun(int *x,int i)
{
 *x=*(x+i);
 }
 main()
 {
 int a[N]={1,2,3,4,5,6,7,8},i;
 fun(a,2);
 for(i=0;i<N/2;i++)
 {
 printf("%d,",a[i]);
 }
 printf("\n");
 }

程序运行后的输出结果是(  )。

第4526题

有如下程序:

#include <stdio.h>
void change(int *array,int len)
 {
 for(;len>=0;len--)
 array[len]+=2;
 }
 main()
{
 int i,array[5]={1,2};
 change(array,4);
 for(i=0;i<4;i++)
 printf("%d,",array[i]);
 printf("\n");
 }

程序运行后的输出结果是(  )。

第4527题

有如下程序:

#include <stdio.h>
void change(int * array,int len)
 {
 for(;len>=0;len--)array[len]-=1;
 }
 main()
 {
 int i, array[5]={2,2};
 change(array,4);
 for(i=0;i<5;i++)printf("%d,",array[i]);
 printf("\n");
}

程序运行后的输出结果是(  )。

第4528题

有以下程序

#include <stdio.h>
 void fun(int *a,int n)
 {
 int t,i,j;
 for(i=0;i<n-1;i++)
 for(j=i+1;j<n;j++)
 if(a[i]<a[j])
 {
 t=a[i];
 a[i]=a[j];
 a[j]=t;
 }
 }
 main()
 {
 int c[10]={1,2,3,4,5,6,7,8,9,0},i;
 fun(c+4,6);
 for(i=0;i<10;i++)printf("%d,",c[i]);
 printf("\n");
}

程序的运行结果是(  )。

第4529题

有以下程序(函数fun只对下标为偶数的元素进行操作):

#include <stdio.h>
void fun(int *a,int n)
 {
 int i,j,k,t;
 for(i=0;ia[k])k=j;
 t=a[i];
 a[i]=a[k];
 a[k]=t;
 }
 }
 main()
 {
 int aa[10]={1,2,3,4,5,6,7},i;
 fun(aa,7);
for(i=0;i<7;i++)printf("%d,",aa[i]);
 printf("\n");
 }

程序运行后的输出结果是(  )。

第4530题

有以下程序:

#include <stdio.h>
void fun(int *x,int s,int n)
 {
 int i;
 for(i=s;i>=n;i--)
 *(x+i+3)=*(x+i);
 }
 main()
 {
 int m[]={0,1,2,3,4,5,6,7,8,9},k;
 fun(m,10-4,3);
 for(k=0;k<10;k++)
 printf("%d",m[k]);
 }

程序的运行结果是(  )。

第4531题

有以下程序:

#include<stdio.h>
 void fun(int *x,int s, int e)
 {
 int i,j,t;
 for(i=s,j=e;i<j;i++,j--)
 {
 t=*(x+i);
 *(x+i)=*(x+j);
 *(x+j)=t;
 }
 }
 main()
 {
 int m[]={0,1,2,3,4,5,6,7,8,9},k;
 fun(m,0,3);
 fun(m+4,0,5);
 fun(m,0,9);
 for(k=0;k<10;k++)printf("%d",m[k]);
 }

程序的运行结果是(  )。

第4532题

有以下程序:

#include <stdio.h>
 void fun(int *s,int n1,int n2)
 {
 int i,j,t;
 i=n1;
 j=n2;
 while(i<j)
 {
 t=s[i];
 s[i]=s[j];
 s[j]=t;
 i++;
 j--;
 }
 }
 main()
 {
 int a[10]={1,2,3,4,5,6,7,8,9,0},k;
fun(a,0,3);
 fun(a,4,9);
 fun(a,0,9);
 for(k=0;k<10;k++)
 printf("%d",a[k]);
 printf("\n");
 }

程序运行的结果是(  )。

第4533题

有以下程序:

#include <stdio.h>
 void fun(int *s,int n1,int n2)
 {
 int i,j,t;
 i=n1;
 j=n2;
 while(i<j)
 {
 t=*(s+i);
 *(s+i)=*(s+j);
*(s+j)=t;
 i++;
 j--;
 }
 }
 main()
 {
 int a[10]={1,2,3,4,5,6,7,8,9,0},i,*p=a;
 fun(p,0,3);
 fun(p,4,9);
 fun(p,0,9);
 for(i=0;i<10;i++)
 printf("%d",*(a+i));
 printf("\n");
 }

程序运行后的输出结果是(  )。

第4534题

有以下程序:

#include <stdio.h>
void fun(int *s,int t,int *k)
 {
 int p;
 for(p=0,*k=p;ps[*k])*k=p;
 }
 main()
 {
 int a[10]={11,12,13,14,15,16,20,18,19,10},k;
 fun(a,10,&k);
 printf("%d,%d\n",k,a[k]);
 }

程序运行后的输出结果是(  )。

第4535题

有以下程序

#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));
 }

程序的运行结果是(  )。

第4536题

设有定义 int x[2][3]; 则以下关于二维数组x的叙述中错误的是(  )。

第4537题

以下定义数组的语句中错误的是(  )。

第4538题

以下错误的定义语句是(  )。

第4539题

若有定义语句:

int m[][3]={1,2,3,4,5,6,7};

则与该语句等价的是 ( )。

第4540题

若有定义:

int a[2][3];

以下选项中对a数组元素正确引用的是(  )。