首页>计算机等级考试>模拟试题>正文
2007年计算机二级C语言模拟试题(7)

www.zige365.com 2007-10-26 11:47:13 点击:发送给好友 和学友门交流一下 收藏到我的会员中心
(41)下列程序是用来判断数组中特定元素的位置所在。如果输入如下整数:
876  675  896  101  301  401  980  431  451  777
#include <conio.h>
#include <stdio.h>
int fun(int *s, int t, int *k)
{ int i;
*k=0;
for(i=0;i<t;i++)
if(s[*k]<s[i])*k=i;
return s[*k];
}
main()
{
int a[10]={ 876,675,896,101,301,401,980,431,451,777},k;
clrscr();
fun(a, 10, &k);
printf("%d, %d\n ", k, a[k]);
}
则输出结果为
A)7,431
B)6
C)980
D)6,980
正确答案:  D

 (42) C语言结构体类型变量在程序执行期间
A)所有成员一直驻留在内存中
B)只有一个成员驻留在内存中
C)部分成员驻留在内存中
D)没有成员驻留在内存中
正确答案:  A

(43)下面程序应能对两个整型变量的值进行交换。以下正确的说法是
main()
{int a=10,b=20;
printf("(1)a=%d,b=%d\n",a,b);
swap(&a,&b);
printf("(2)a=%d,b=%d\n",a,b);
}
swap(int p,int q)
{int t;
t=p;p=q;q=t;
}
A)该程序完全正确
B)该程序有错,只要将语句swap(&a,&b);中的参数改为a,b即可
C)该程序有错,只要将swap()函数中的形参p和q以及t均定义为指针(执行语句不变)即可
D)以上说法都不对
正确答案:  D

(44)有以下程序
#include <stdlib.h>
main()
{ char *p,*q;
p=(char *)malloc(sizeof(char)*20); q=p;
scanf("%s %s",p,q); printf("%s %s\n",p,q);
}
若从键盘输入:abc def<回车>,则输出结果是
A)def def
B)abc def
C)abc d
D)d d
正确答案:  A

(45)以下程序的输出结果是
int f()
{ static int i=0;
int s=1;
s+=i; i++;
return s;
}
main()
{ int i,a=0;
for(i=0;i<5;i++)a+=f();
printf("%d\n",a);
}
A)20
B)24
C)25
D)15
正确答案:  D

(46)已知 int a=1,b=3则a^b的值为
A)3
B)1
C)2
D)4
正确答案:  C

(47)如果需要打开一个已经存在的非空文件"Demo"进行修改下面正确的选项是
A)fp=fopen("Demo","r");
B)fp=fopen("Demo","ab+");
C)fp=fopen("Demo","w+");
D)fp=fopen("Demo","r+");
正确答案:  D

(48)若要打开A盘上user子目录下名为abc.txt的文本文件进行读、写操作,下面符合此要求的函数调用是
A)fopen("A:\user\abc.txt","r")
B)fopen("A:\\user\\abc.txt","rt+")
C)fopen("A:\user\abc.txt","rb")
D)fopen("A:\user\abc.txt","w")
正确答案:  B

(49)有以下程序
#include <string.h>
main()
{ char *p="abcde\0fghjik\0 ";
printf("%d\n ",strlen(p));
}
程序运行后的输出结果是
A)12
B)15
C)6
D)5
正确答案:  D

(50) 有以下程序
#include <stdlib.h>
struct NODE
{ int num; struct NODE *next; };
main()
{ struct NODE *p,*q,*r;
p=(struct NODE*)malloc(sizeof(struct NODE));
q=(struct NODE*)malloc(sizeof(struct NODE));
r=(struct NODE*)malloc(sizeof(struct NODE));
p->num=10; q->num=20; r->num=30;
p->next=q;q->next=r;
printf("%d\n ",p->num+q->next->num);
}
程序运行后的输出结果是
A)10
B)20
C)30
D)40
正确答案:  D

、填空题

(1)冒泡排序算法在最好的情况下的元素交换次数为 【1】 。
正确答案:  1.(0)

(2)在最坏情况下,堆排序需要比较的次数为 【2】 。
正确答案:  1.(O(nlog2n))

(3)若串s="MathTypes",则其子串的数目是 【3】 。
正确答案:  1.(46)

(4)软件开发环境是全面支持软件开发全过程的 【4】 集合。
正确答案:  1.(软件工具)

(5)关系数据库的关系演算语言是以 【5】 为基础的DML语言。
正确答案:  1.(谓词演算)

(6)下列y的值是 【6】 。
int y; y=sizeof (2.25*4);
正确答案:  1.(8)

(7)下列x的值是 【7】 。
int x;x=sizeof 2.25*4;
正确答案:  1.(32)

(8)以下程序的输出结果是 【8】 。
main ()
{int i=010,j=10;
 pirntf ("%d,%d\n",i,j);
}
正确答案:  1.(8,10)

(9)下列程序的输出结果为 【9】 。
main ()
{int x=3,y=5;
printf ("%d",x=(x--)*(--y));
}
正确答案:  1.(12)

(10)以下程序的输出结果是 【10】 。
fun (int x,int y,int z)
{ z =x*x+y*y;}
main ()
{int a=31;
fun (6,3,a)
printf ("%d", a)
}
正确答案:  1.(31)

(11)若有int a=1;int b=2;则a|b的值为 【11】 。
正确答案:  1.(3)

(12)已知字母a的ASCII码为十进制数97,且设ch为字符型变量,则表达式ch=′a′+′8′-′3′的值为 【12】 。
正确答案:  1.(f)

(13)若从键盘输入58,则以下程序输出的结果是 【13】 。
main()
{int a;
scanf("%d",&a);
if(a>50)printf("%d",a);
if(a>40)printf("%d",a);
if(a>30)printf("%d",a);
}
正确答案:  1.(585858)

(14)下列程序的输出的结果是 【14】 , 【15】 。
main()
{int i,j row,colum,m;
static int array[3][3]={{100,200,300},{28,72,-30}{-850,2,6}};
m=array[0][0];for(i=0;i<3;i++)
for(j=0;j<3;j++)
if(array[i][j]<m)
{m=array[i][j];colum=j;row=i;}
printf("%d,%d,%d\n",m,row,colum);
}
正确答案:  1.(-850,)

(15)以下程序中,select 函数的功能是:在N行M列的二维数组中,选出一个最大值作为函数值返回,并通过形参传回此最大值所在的行下标。请填空。
#define N 3
#define M 3
select(int a[N][M],int *n)
{int i,j,row=1,colum=1;
for(i=0;i<N;i++)
for(j=0;j<M;j++)
if(a[i][j]>a[row][colum]){row=i;colum=j;}
*n= 【16】 ;
return 【17】 ;
}
main()
{int a[N][M]={9,11,23,6,1,15,9,17,20},max,n;
max=select(a,&n);
printf("max=%d,line=%d\n",max,n);
}
正确答案:  1.(row) 2.(a[row][colum])

(16)函数my_cmp()的功能是比较字符串s和t的大小,当s等于t时返回0,否则返回s和t的第一个不同字符的ASCII码差值,即s > t时返回正值,当s < t时返回负值。请填空。
my_cmp(char *s, char *t)
{while (*s == *t)
{if (*s == ′\0′)return 0;
++s; ++t;
} return 【18】 ;
}
正确答案:  1.(*s-*t)

(17)若有以下说明和定义语句,则变量w在内存中所占的字节数是 【19】 。
union aa {float x; float y; char c[6]; };
struct st{ union aa v; float w[5]; double ave; } w;
正确答案:  1.(34)

(18)"FILE *p"的作用是定义一个文件指针变量,其中的"FILE"是在 【20】 头文件中定义的。
正确答案:  1.(stdio.h)

本新闻共2页,当前在第2页  1  2  

我要投稿 新闻来源: 编辑: 作者:
相关新闻
2007年计算机二级VB模拟试题及答案(12)
2007年计算机二级VB模拟试题及答案(3)
2007年计算机等级考试二级C++模拟试题(1)
2007年计算机二级C语言模拟试题(8)
2007年计算机二级C语言模拟试题(6)