C语言试卷

第741题

有以下程序

#include <stdio.h>
main()
 {
 int a[]={2,4,6,8,10},x,*p,y=1;
 p=&a[1];
 for(x=0;x<3;x++)y+=*(p+x);
 printf("%d\n",y);
 }

程序的输出结果是(  )。

第742题

有如下程序:

#include <stdio.h>
main()
 {
 int i,*ptr;
 int array[3]={8,2,4};
 for(ptr=array,i=0;i<2;i++)
 printf("%d,",*ptr++);
 printf("\n");
 }

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

第743题

有以下程序:

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

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

第744题

有如下程序

#include <stdio.h>
main() 
{
 int i, *ptr;
 int array[5] = {5,3,1};
 for (ptr=array, i=0; i<5; i++, ptr++)
 {
 if (*ptr == 0)
 putchar('X');
 else
 putchar('A' + *ptr);
 }
 printf("\n");
 }

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

第745题

有以下程序:

#include <stdio.h>
main()
 {
 int x[]={8,2,6,12,5,15},f1,f2;
 int *p=x;
 f1=f2=x[0];
 for(;p<=x+5;p++)
 {
 if(f1<*p)f1=*p;
 if(f2>*p)f2=*p;
 }
 printf("%d,%d\n",f1,f2);
 }

程序的运行结果是(  )。

第746题

若有函数声明:

void fun(float array[],int*ptr);

以下叙述正确的是(  )。

第747题

若有函数:

void fun(double a[],int *n)
 {......}

以下叙述中正确的是(  )。

第748题

若主函数中有定义语句:

int a[10],b[10],c;

在主函数前定义的fun函数首部为 void fun(int x[]) 则以下选项中错误的调用语句是(  )。

第749题

有以下程序

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

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

第750题

有以下程序:

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

程序运行的结果是(  )。

第751题

有以下程序:

#include <stdio.h>
void fun(int a[],int n)
 {
 int i,j=0,k=n/2,b[10];
 for(i=n/2-1;i>=0;i--)
 {
 b[i]=a[j];
 b[k]=a[j+1];
 j+=2;
 k++;
 }
 for(i=0;i<n;i++)
 a[i]=b[i];
 }
 main()
 {
 int c[]={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");
 }

程序的运行结果是(  )。

第752题

有以下程序:

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

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

第753题

有以下程序:

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

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

第754题

若有以下程序

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

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

第755题

以下程序中函数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]);
 }

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

第756题

有以下程序:

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

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

第757题

有以下程序

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

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

第758题

有以下程序:

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

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

第759题

有如下程序:

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

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

第760题

有如下程序:

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

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