怎样把c语言的源文件和html的源文件编译成一个opk文件,2012年全国高等教育自学考试高级语言程序设计标准预测试卷(6)...

2012年全国高等教育自学考试高级语言程序设计标准预测试卷(6):2012年全国高等教育自学考试高级语言程序设计标准预测试卷。试卷总分100分;共有5类型题目

一、单项选择题,每小题2分,共30分,在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。

1.C语言中错误的int类型常数是( )

A.123

B.1F7

C.038

D.OxAF

2.以下属于C语言保留字的是( )

A.define

B.put

C.fclose

D.extern

3.sizeof(float)是( )

A.函数调用

B.int型表达式

C.float型表达式

D.非法表达式

4.结构体变量各成员内存分配的顺序是( )

A.顺序的

B.逆序的

C.随机的

D.只分配一个最大成员内存占用量

5.若定义了int a;char b;float c;,

则表达式a*b-c的类型是( )

A.float

B.char

C.int

D.double

6.若有以下定义和语句:

char *s1="12345",*s2="1234":

printf("%d ",strlen(strcpy(s1,s2)));

则输出结果是( )

A.4

B.5

C.6

D.不确定

7.

若x、y均是int型变量,则执行以下语句后的结果是( )

for(x=1;x<5;x+=2)

for(y=1;y<5;y++)

{printf("%2d",x*y);

if(y==4)printf(" ");

}

A.1 2 3 4

3 6 9 12

B.2 3 4 5

3 4 5 6

C.1 2 3 4 5 6 9

D.2 3 4

3 6 9

6 9 12

8.设整型变量m、na、b的值均为1,执行(m=a==b)||(n=a>b)后m,n的值是( )

A.0,1

B.1,0

C.1,1

D.0,0

9.char型常量在内存中存放的是( )

A.二进制代码值

B.十进制代码值

C.十六进制代码值

D.ASCⅡ代码值

10.

0_02012022520242534335048080.gif

11.现有下列程序语句,执行后的结果是( )

#include<stdio.h>

void main()

{char s1[100]="123",s2[100]="qwer";

puts(s1);puts(s2);

printf("%s%s",s1,s2);

}

A.123 qwer123 qwer

B.123qwer123qwer

C.123qwerl23qwer

D.123qwer123qwer

12.假定所有变量均已正确说明,下列程序段运行后x的值是( )

a=b=c=0;x=60;

if(!a)x--;

else if(b)if(c)x=3;

else x+=4;

A.3

B.4

C.60

D.63

13.若有以下定义,则不能正确地表示数组中的元素的是( )

char *s="1,2,3,4,5,6,7,8,9,0,";

A.*s

B.s[9]

C.*(s+1)

D.*(s+10)

14.设有下列数据定义语句,则"printf("%d ",d[0],y/d[0],X*d[1].x);"的输出是( )

struct{int x;int y;}d[2]={{1,3},{2,7)};

A.0

B.1

C.3

D.6

15.执行以下程序段后,m的值是( )

int a[2][3]={{1,2,3},{4,5,6)};

int m,*ptr;

ptr=&a[0][0];

m=(*ptr)*(*(ptr+2))*(*(ptr+4));

A.15

B.24

C.45

D.不确定

二、填空题,每小题2分,共20分请在每小题的空格中填上正确答案。错填、不填均无分。

16.从计算机的角度来讲,______是计算机程序中解决问题的方法步骤。

17.函数strcmp()和函数strcat()包含在头文件______中。

18.函数调用自身的调用是______。

19.下面程序的输出是______。

#include<stdio.h>

main()

{char x=0.40;

printf("%d ",x=x<<1);}

20.现在程序的输出是______。

#include<stdio.h>

main()

{int arr[10],j,k=0;

for(j=0;j<10;j++)

arr[j]=j;

for(j=1;j<4;j++)

k+=arr[j]+j;

printf("%d ",k);

}

21.阅读下列程序:

#include<stdio.h>

#define MAXCOUT 4

void fun()

main()

{int cout;

for(cout=1;tout<=MAXCOUT;cout++)

fun();

}

void fun()

{int j=0;

j+=2;printf("%d",j);

}

22.设有int x=11;表达式(x++*1/3)的值是______。

23.设有如下程序段:

intj=0,sum=1;

do{

sum+=j++;}

while(j<6);

printf("%d ",sum);

上述程序段的输出结果是______。

24.以下循环体的执行次数是______。

#include<stdio.h>

main()

{int j,k;

for(j=0,k=1;j<=k+1;j+=2,k--)

printf("%d ",j);)

25.下面程序段的输出结果是______。

#include<stdio.h>

int b=1:

int func(int *a)

{*a+=b;return(*a);)

main()

{int a=2,res=1;

res+=func(&a);

prf("%d%d ",a,res);}

三、程序分析题,每小题5分,共20分阅读下列程序,将输出结果写到各题右侧的空白处。

26.#include<stdio.h>

main()

{int a[]={2,4,6,8,10};

int y=1,x,*P;

p=&a[1];

for(x=0;x<3;X++)

y+=*(p+x);

printf("%d ",y);

}

27.#include<stdio.h>

main()

{char *p[]={"BOOL","OPK","H","ASD");

int;

for(i=3;i>=0;i--,i--)

printf("%s",*(p+i));

printf(" ");

}

28.#include<stdio.h>

int d=1:

int fun(int p)

{d+=P++;

printf("%d",d);

}

main()

{int a=3;

fun(a);

d+=a++;

print f("%d ",d);

}

29.#include<stdio.h>

main()

{int i,j,row,col,max;

int a[3][4]={{1,2,3,4,},{10,4,20,6,},{0,-1,-3,-5,}};

max=a[0][0];

for(i=0;i<3;i++)

for(j=0;j<4;j++)

if(a[i][j]>max)

{max=a[i][j];row=i;col=j;)

printf("max=%d,row=%d,col=%d ",max,row,col);

}

四、程序填充题,每空5分,共15分给出下列程序,将横线处缺少的部分补上,使其能正确运行。

30.

完善下面程序段,以使其完成以下数学函数的计算。

0_02012022520303293721158646.gif

#include<stdio.h>

#include<math.h>

main()

{float x,y,f1,fun();

scanf("%f%f",&x,&y);

fl—X*x/fun(______);/*第一空*/

printf("A=%f ",f1);

}

float fun(float f)

{float f2;

f2=f*f+sqrt(1十______/*第二空*/+______);/*第三空*/

return(f2);

}

31.以下程序能将字符串Program!反向打印出来,请填空。

#include<stdio.h>

void out(char *str)

{char *s=______;/*第一空*/

if(*s==NULL)return:

while(______)s++;/*第二空*/

s--;

printf("%c ",*s);

______=NULL;/*第三空*/

out(str);

}

main()

{char c[]="Program!";

out(c);}

32.下面程序把从终端读入的文本(用"@"作为文本结束的标志)复制到一个名为bi.dat的新文件中,请填空。

#include<stdio.h>

FILE*fp;

main()

{char ch;

if((fp=______)==NULL)/*第一空*/

exit(0);

while((______)!="@")/*第二空*/

fputc(ch,fp);

______;/*第三空*/

}

五、程序设计题,每小题7.5分,共15分。

33.从键盘上输入一个3*5的矩阵,将其转置后形成5*3的矩阵输出。

34.输入30个学生的学号和3门课程的成绩(整数),统计并输出3门课程总分最高的学生的学号和总分。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值