高级语言程序设计模拟试卷(二)

高级语言程序设计模拟试卷(二),第1张

高级语言程序设计模拟试卷(二),第2张

1.单项选择题(在本题的每一小题的备选答案中只有一个答案是正确的,请把你认为正确答案的题号,填入题于的括号内。多选不给。每题1分,共20分)

1.以下符合语法规则的用户标识符是( )。
 (1)1st (2) break (3)B757 (4) Two Words

2.若要求在if语句括在圆括号对中的表达示表示a不等于0的关系,则能正确表示这一关系的表达式是( )。
 (1)a<>0 (2)!a (3)a=0 (4)

3.若定义
 int a=1,b=2,c=3,d=4,e;
则执行下述语句
  e=a>b?a:c后,e的值为(  )。
 (1)1 (2)2 (3)3 (4)4

4.下面的语句组所表示的数学函数关系是(  )。 
 y=-1;
if (x!=0)
if (x>0)
y=1;
else
y=0;

5. 以下叙述正确的是( )。
(1)do-while语句构成的循环不能用其他语句构成的循环来代替
(2)do-while语句构成的循环只能用break语句退出
(3)do-while语句构成的循环,在while后的表达式为非零时结束循环
(4)do-while语句构成的循环,在while后的表达式为零时结束循环

6.有以下程序
#include
main()
{
int x,i;
for (i=1;i<=50;i++)
{
x=i;
if (++x%2==0)
if (x%3==0)
if (x%7==0)
printf("%d",i);
}
printf("\n");
}
执行此程序的输出结果是( )。
(1)28 (2)27 (3)42 (4)41

7.执行下述程序的输出是( )。
#include
main()
{
int y=9;
for (;y>0;y--)
{
if (y%3==0)
{
printf("y%3==0);
continue;
}
if (y!=1)
printf("%c",' ');
else
printf("\n");
}
}
(1) 7 4 1 (2)8 5 2 (3)9 6 3 (4)8 7 5 4 2 1

8.若有以下程序片段
char str[]="ab\n\012\\\"";
printf("%d\n",strlen(str));
则执行printf语句的输出结果是( )。
(1)6 (2)12 (3)3 (4)4

9.对于如下之程序段,应有( )。
char a[10],b[]="China";
a=b;
printf("%s",a);
(1)运行后将输出China (2)运行后将输出ch
(3)运行后将输出c (4)程序出错,不能运行

10.执行下述程序的输出结果是( )。
#include
main()
{
int i,x[3][3]={9,8,7,6,5,4,3,2,1},*p=&x[1][1];
for (i=0;i<4;i+=2)
printf("%d",p[i]);
printf("\n");
}
(1) 5 2 (2) 5 1 (3) 5 3 (4) 9 7

11.以下程序当运行时,如果从键盘上输入
book
book
则输出结果是( )。
#include
#include
main()
{
char a1[80],a2[80],*s1=a1,*s2=a2;
gets(s1); gets(s2);
if (!strcmp(s1,s2))
printf("*");
else
print("#");
printf("%d\n",strlen(strcat(s1,s2)));
}
(1)*8 (2)#9 (3)#8 (4)*9

12.下面的程序段的运行结果是( )。
char str[]="NBA",*p=str;
printf("%d\n",*(p+3)));
(1) 65 (2)0 (3)字符'A'的地址 (4)A
13.决定c语言中函数返回值类型的是( )。
(1)return语句中的表达式类型
(2)调用该函数的主调函数类型
(3)调用函数时临时指定的类型
(4)定义函数时在函数首部中所指定的类型(若缺省,则隐含为int型)

14.执行下述程序的输出结果是( )。
#include
int func(int x,int y,int *cp,int *dp)
{
*cp=x+y;
*dp=x-y;
}
main()
{
int a,b,c,d;
a=30;
b=50;
func(a,b,&c,&d);
printf("%d,%d\n",c,d);
}
(1)80,-20 (2)80,20 (3)50,30 (4)30,50

15.欲定义一函数,其功能是交换两个整数值,且通过函数调用能返回交换的结果。能正确执行此功能的函数定义是( )。
(1)func(int x,int y)
{
int t;
t=x;
x=y;
y=t;;
}
(2)func(int *x,int *y)
{
*x=*y;
*y=*x;
}
(3)func(int *x,int *y)
{
int t;
t=*x;
*x=*y;
*y=t;
}
(4)func(int *x,int *y)
{
int *t;
*t=*x;
*x=*y;
*y=*t;
}

16.执行下述程序的输出结果是( )。
#include
int d=1;
func (int p)
{
static int d=5;
d+=p;
printf ("%d ",d);
return (d);
}
main ()
{
int a=3;
printf("%d\n",func(a+func(d));
}
(1)6 9 9 (2)6 6 9 (3)6 15 15 (4)6 6 15

17.设有如下定义
struct sk
{
int a;
float b;
} data,*p;
若有 p=&data;
则对data中的成员a的正确引用是( )。
(1)(*p).data.a (2)(*p).a (3)p->data.a (4)p.data.a

18.若已建立下面的链表结构,指针变量p、q分别指向图中所示结点,则下列语句组中,不能实现将q所指向的结点插入到链表末尾的一组语句是( )。

(1)q->next=NULL; (2) p=p->next;
p=p->next; q->next=p->next;
p->next=q; p->next=q;
(3) p=p->next; (4) p=(*p).next;
q->next=p; (*q).next=(*p).next;
p->next=q; (*p).next=q;

19.函数调用语句
fseek(fp,-20L,2);
的含义是( )。
(1)将文件位置指针移动到距离文件头20个字节处
(2)将文件位置指针从当前位置向后移动20个字节
(3)将文件位置指针从文件末尾处向后退20个字节
(4)将文件位置指针移动到离当前位置20个字节处

20.若以下程序所生成的可执行文件名为filel.exe,则当在操作系统状态下输入下述命令行执行该程序时
FILE1 CHINA BEIJING SHANGHAI
程序的输出结果是( )。
#include
main(int argc,char *argv[])
{
while (argc-->1)
{
++argv;
printf("%s ",*argv);
}
printf("\n");
}
(1)CHINA BEIJING SHANGHAI (2)FILE1 CHINA BEIJING SHANGHAI
(3)C B S (4)F C B

位律师回复
DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
白度搜_经验知识百科全书 » 高级语言程序设计模拟试卷(二)

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情