当前位置:IT认证>计算机二级

问题:

[单选] 有以下程序,其中函数f的功能是将多个字符串按字典顺序排序(  )。
#{nc[ude%string.h>
void{(char*p[],int n)
{char*t;int i,j;
for(i=0:i<n-1;i++)
for(j=i+1;j<n;j++)
if(strcmp(p[i],p[j]>O){t=p[i];p[i]=p[j];p[j]
=t;}
}
main()
{char *P[5]={¨abc”,”aabdfg”,”abbd”,”dcdbe”,”ed”);
f(p,5):
print[("%d\n",strlen(p[1]));

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

A . 2
B . 3
C . 6
D . 4

若变量已正确定义并赋值,符合C语言语法的表达式是(  )。 a=a+7:。 a=7+b+e,a++。 int(12.3%4)。 a=a+7=c+b。 以下选项中正确的整型常量是(  )。 12.。 -20。 1,000。 456。 利用fseek函数可实现的操作是(  )。 实现文件的顺序读写。 改变文件的位置指针。 实现文件的随机读写。 以上答案均正确。 若fp是指向某文件的指针,且尚未读到文件末尾,则函数feof(fp)的返回值是(  )。 EOF。 -1。 非零值。 0。 下列程序的输出结果是(  )。#include<stdio.h>main(){int a[2][3]={{1,2,3),{4,5,6)),(*p)[3],i;p=a:for(i=O;j<3;i++){  if(i<2)p[1][i]=p[1][i]-1;elsep[1][i]=1;)printf(”%d\n”,a[0][1]4-a[1]+a[1]+a[1][2]);) 8。 7。 12。 9。 有以下程序,其中函数f的功能是将多个字符串按字典顺序排序(  )。
#{nc[ude%string.h>
void{(char*p[],int n)
{char*t;int i,j;
for(i=0:i<n-1;i++)
for(j=i+1;j<n;j++)
if(strcmp(p[i],p[j]>O){t=p[i];p[i]=p[j];p[j]
=t;}
}
main()
{char *P[5]={¨abc”,”aabdfg”,”abbd”,”dcdbe”,”ed”);
f(p,5):
print[("%d\n",strlen(p[1]));

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

参考答案:

  参考解析

D。【解析】函数voidf的功能是将字符指针数组*p[]中的每个字符串按照从小到大的顺序排序。在主函数main()中,调用f(p,5)后,字符指针数组*pE5]中的字符串按照字典顺序从小到大排列为如下形式,即*pE5]一(”aab—df9”,”abbd”,”abc”,”cd¨,”dcdbe”),因此P[1]=”abdb”,strlen(p[1])=4。

在线 客服