高级语言程序设计A离线作业_第1页
高级语言程序设计A离线作业_第2页
高级语言程序设计A离线作业_第3页
高级语言程序设计A离线作业_第4页
高级语言程序设计A离线作业_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第一次

12.

main()

{intx=2,y=-l,z=2;

if(x<y)<span="">

if(y<0)z=0;

elsez+=l;

printf("%d\n",z);

)

写出程序输出结果(1)o

参考答案:2

13.下面程序的运行结果是(2)o

voidfl(void)

{intx=l;

staticy=2;

x++;

y++;

printf("%d,%d\n”,x,y);

)

voidmain()

{intk;

for(k=l;k<=3;k++)fl();

)

参考答案:

2,3错一行扣1分

2,4无逗号扣1分

2,5无换行扣1分

14.ttinclude"stdio.h"

voidmain()

{chara[61],*s;intn;

gets(a);

for(s=a;*s;s++)if(*s>=,A'&&*s<=,V)*s+=32;

puts(a);

)

若程序的输入为SWJTU,则输出结果为(3)o

参考答案:swjtu

15.ttinclude"stdio.h"

♦♦defineN5

intswap(int*p,int*q)

{intt;

if(p<q){t=**p;*p=*q;*q=t;}

returnp<q;<>

)

voidf(inta[],intm)

{int*p,*q;

p=a;q=a+m;

while(swap(p,q))

{p++;q-}

)

voidmain()

{intm,a[N];

for(m=0;m<n;m++)>

f(a,N-l);

for(m=0;m<n;m++)>

)

若程序的输入为89234,则输出结果为(4)o

参考答案:43298

16.写一个程序,建立N元整型数组,然后输入一个整数x,查找x是否包含在数组中,

若在,则返回第一次出现的下标以及总的出现次数;否则,输出下标为T,总的出现次数

为0.(8分)

参考答案:

ttinclude“stdio.h"

#defineN8

intlocate(inta[N],intx,int*pc)

{inti,first=-l;

*pc=0;

for(i=0;i<N;i++)if(a[i]==x){if(*pc==0)first=i;(*pc)++;

returnfirst;

)

voidmain()

{inta[N],i,count,p;

printf(aInput%dintnumbers:\nw,N);

for(i=0;i<N;i++)scanf("%d”,a+i);

printf(Inputx=");scanf("%d",&x);

p=locate(a,x,&count);

printf("Firstposition=%d,count=%d\nw,p,count);

)

(1)正确定义变量1分

⑵算法正确5分

⑶正确输入1分

(4)正确输出1分

17.输入若干双精度实数,直到0时停止,计算并输出这些实数的平均值。

参考答案:

^include“stdio.h"

voidmainO

{intn=0;doublea,sum=0,av;

printf("Inputdoubletypenumbersuntilinput0:\n");

whiled)

{scanf("%lf",&a);if(!a)break;

n++;sum+=a;

}

if(n==0)printf("Noinputdata.\nw);

else{av=sum/n;

printf(wav=%.4f\n",av);

)

(1)程序结构(主函数,包含文件)正确1分

(2)正确定义计数变量以及初始化1分

(3)正确定义求和变量并初始化1分

(4)循环控制结构正确1分

(5)输入语句及格式正确1分

(6)输出语句及格式正确1分

(7)计数、累加求和以及求均值正确1分

(8)求均值时先判断计数变量值是否为01分

18.C语言的三种循环语句是,dowhile循环、循环

和循环;结构化程序设计方法主张限制使

用语句。

参考答案:

1)while2)for

3)goto

19.已知inta=2,b=3,c=0;执行下列语句后,写出各变量的值。

c=b++—a++;变量a=,b=,c=

参考答案:341

20.循环语句for(i=0;i<=10;i-);其循环的次数为.

参考答案:0

21.C语言提供了三种预处理功能,它们是:宏定义、包含文件和

参考答案:条件编译

22.若有定义:inta=0,b=0,c=0,d=0;则执行语句a=(b=3,c=5*b++,d=++c+l);后,变量a

的值是,变量b的值是,变量c的值

是,变量d的值是。

参考答案:

1741617_

23.若有定义:inta=l,b=2,c=3,d=4;,则表达式:a〈=b?a:c<=d?a:d的值

是,执行表达式(a>b)&&(C++)后,c的值为。

参考答案:13

24.有如下语句:charA[]={"SWJTU"};该字符串的长度

是>A[3]=o

参考答案:5(允许无单引号和写ASCH码84)

25.若有定义charch=,C*;则puchar((ch>='A'&&ch〈='Z')?(ch+32):ch);语句

的输出结果为.

参考答案:c

26.若有定义inta[]={1,2,3,4},*p=a+l;则表达式*++p的值

为。

参考答案:3

27.若有类型定义typedefint则Mata[5];表示的实际数组定义

是。

参考答案:inta[5][10];

第二次

11.下面程序的输出是(1)»

^include"stdio.h"

voidmain()

{chara[40]="administrators",*p;

for(p=a;*p!='i';p++)putchar(*p-32);

)

参考答案:

全错。分

ADM错一个字母扣1分

12.下面程序的运行结果是(2)o

{intx=l;

staticy=2;

x++;

y++;

printf("%d,%d\n”,x,y);

}

voidmainO

{intk;

for(k=l;k<=3;k++)fl();

)

参考答案:

2,3错一行扣1分

2,4无逗号扣1分

2,5无换行扣1分

13.下面程序的运行结果是(3)»

ttinclude"stdio.h"

voidmain()

{intm,n;

m=10;n=-1;

do{m++;n+=5;

if(!(n%3))printf("%4d%4d\n”,m,n);

}while(m>n);

)

参考答案:

无明显空格扣1分

129错一数扣2分;

14.下面程序的运行结果是(4)o

Sinclude"stdio.h"

inta[4]={1,2,3,4);

voidmainO

{int*p=a,m,n;

for(m=3;m>=0;m--)

for(n=0;n<=m;n++)printf*(p+n));

}

参考答案:12341231211234,123,12,1四段各1分

15.数组名作为参数传递给函数,作为实参的数组名被处理为该数组的(1)

参考答案:(1)首地址

16.一个C程序中必须有(2)函数,无论该函数在整个程序中的位置如何,C程序总

是从该函数开始执行。

参考答案:(2)主或main()

17.有如下语句:charA[]={"SWJTU"};该字符串的长度是(3),

A[3]=(4)。

参考答案:(3)5(4)'『(允许无单引号和写ASCII码84)

18.若有定义intx=5,n=5;则执行语句x+=n++;后,x的值=(5),n

的值=(6)o

参考答案:(5)10(6)6

19.C语言的静态变量以及静态数组元素默认的初值为(7)

参考答案:(7)0

20.若有inta=2,b=l,c=0;执行语句c=a++-b--;后,变量c的值为(14)b

的值(15)

参考答案:(14)1(15)0

21.结构化程序设计的三种基本结构包括有:、_

和«

参考答案:选择结构循环结构顺序结构

22.算术表达式:一B+N廿-4ac的c语言表达式是:

参考答案:-b+sqrt(b*b-4*a*c)

23.编写一程序,从键盘读入一个字符串并存入字符数组,然后依次输出第1,3,5,7,…

个字符。

例如:输入为:computer

输出为:cmue

参考答案:

^include

voidmainO/*程序结构与头文件正确2

分*/

{chars[255];inti;/*正确输入2分*/

gets(s);/*正确定义字符数组2

分*/

for(i=0;s[i];i+=2)putchar(s[i]);/*正确输出3分*/

)

24.编程打印如下图形到屏幕上。(9分)

*

***

要求打印行数由键盘输入。

参考答案:

#include/*程序结构正确2分*/

voidmain()

{intn,i,j;

scanf("%d",&n);/*正确输入行数1分*/

for(i=l;i<=n;i++)/*外循环控制正确1分*/

{printf(“%*s”,n-i,“”);/*正确输出前导空格2分*/

for(j=l;j<=2*i-l;j++)putchar('*');/*正确输出星号2分*/

printf(a\nn);/*正确换行1

分*/

)

)

25.C源程序文件经过处理后产生目标文件,目标文件

经处理后生成可执行文件。

参考答案:编译连接

26.结构化程序设计只需采用顺序结构、分支结构和结构这三种基本结

构来编写程序。

参考答案:

_循环一

第三次

11.下列程序段的输出是

#include

voidmain()

{intk;

for(k=l;k<5;k++)

(

if(k%2)printf("*");elsecontinue;

printf("#");

)

)

参考答案:*#*#

12.下列程序段的输出是

#include

intf(intx)

{staticy=l;

y++;

x+=y;

returnx;

)

voidmainO

{intk;

k=f(3);

printf("%d,%d\n”,k,f(k));

}

参考答案:5,8

13.表达式!!356的值是。

参考答案:1

14.符号"a"和'a'的区别是。

参考答案:前者(“a”)为串,占2字节存储;后者('a,)为字符占1字节存储

15.若有定义intx=5,n=5;则执行语句x+=n++;后,x的值

=,n的值=o

参考答案:106

16.C语言的静态变量以及静态数组元素默认的初值为

参考答案:0

17.下面程序的运行结果是»

ttinclude

voidmain()

(

inta=2,b=-l,c=2;

if(a<O)<b)

if(b<0)c=0;

elsec++;

printf("c=%d\n",c);

)

参考答案:

考察知识点:if语句的嵌套。

运行结果:

c=2

18.下面程序的运行结果是o

#include

voidmain()

{inta,b,c;

a=3;b=l;c=2;

if(a<b)a="b;

if(b<c)b="c;

elsec=b;c=a;

printf("%d,%d,%d”,a,b,c);

}

参考答案:

考察知识点:if语句的嵌套,else总是和最近的未配对的if来配对。

运行结果:

3,2,3

19.在屏幕上打印如下图形,要求打印行数为5。

12345

23451

34512

45123

51234

参考答案:

#include"stdio.h"

voidmainO

{inti,j,n;

for(i=l;i<=5;i++)

{for(j=l;j<=i;j++)

printf(“%4d”,i);

for(j=i+l;j<=5;j++)

printf(“%4d”,j);

printf("\n");

)

20.输入10个整数,由小到大排序并输出。

参考答案:

ftinclude"stdio.h"

ttdefineN10

voidSelSort(inta[N])/*选择排序函数*/

{inti,j,minj,t;

for(i=0;i<n-l;i++)<>

{minj=i;

for(j=i+l;j<n;j++)>if(a[j]<a[minj])minj=*j;<p*>

if(minj!=i){t=a[i];a[i]=a[minj];a[minj]=t;}

}

)

voidmain()

{inta[N],i;

for(i=0;i<n;i++)>

SelSort(a);

for(i=0;i<n;i++)>

)

21.C语言规定,标识符必须以(1)或(2)开头。

参考答案:(1)字母(2)下划线(1)(2)答案次序可交

22.C语言的变量有4种存贮类型,即extern、static,register和(3)。

参考答案:(3)auto

23.当C语言的算术表达式中出现了char型变量时,系统自动将该型变量值转换

为(4)数据类型以后才参与运算。

参考答案:(4)int

24.已知inta=1,b=2,c=3,d=4;独立执行下列两条语句后,写出指定变量的

值。

1)c=a++-b++;变量a=(12),b=(13)

2)a*=--d+1;变量a=(14),d=(15)

参考答案:

(12)2(13)3(14)

4(15)3

25.C语言没有专门的逻辑变量,在进行逻辑判断时,用数

值表示逻辑假。

参考答案:0

26数学表达式101。乳[+([’写成C语言表达式是一

参考答案:5*loglO(l+P/N)

第四次

11.C语言中变量有4种存储类型,即extern、static>register和

参考答案:auto

12.C语言程序是由组成的。

参考答案:函数

13.算法是解决问题的方法和步骤,具有、确定性、有零个或多个输入、

有一个或多个输出及有效性等特性。

参考答案:有穷性

14.写出下列C语言表达式的

值:10!=910>5>3sizeof(0.5)!2<3+3%

5

参考答案:

1081

15.结构化程序的三种基本结构分别是顺序结构、和。

参考答案:判断(选择、分支)结构循环(重复)结构

16.C语言的字符串结尾用字符表示串结束。

参考答案:'\0'(或者0)

17.若结构体的定义为structstudent

{longnum;

charname[10];

floatscore;

);

则表达式sizeof(structstudent)的值为

参考答案:18

18.该程序的输出是

♦♦include

voidmain()

(

chara口=“programming”,b□="language”;

char*pl,*p2;

inti;

pl=a;p2=b;

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

if(*(pl+i)==*(p2+i))printf("%c”,*(pl+i));

)

参考答案:

考察知识点:字符串的处理

运行结果:

ga

19.下面程序的运行结果是

Sinclude

voidmainO

{

intx=5;

do{

printfx-);

}while(x);

)

参考答案:

运行结果:

54321

20.该程序的输出是

ttinclude“stdio.h"

voidmainO

{chara[40]=wgoodnightaw,*p;

for(p=a;*p!=,;p++)putchar(*p-32);

)

参考答案:

考察知识点:字符串的处理——大小写字母的转换

运行结果:

GOODNIGHT

21.下面程序的运行结果是。

^include“stdio.h"

voidmainO

for(i=l;i<10;i++)

{if(i%3!=0)continue;

printf("%2d”,i);

}

)

参考答案:

考察知识点:continue的使用

运行结果:

369

22.输入一行字符,统计其中的英文字母个数(提示:即输入到字符'\n,时停止输入)

参考答案:

ttinclude"stdio.h"

voidmain()

{charch;intn=0;

printf(aInputastring:\nw);

while(1)

{ch=getchar();if(ch=='\n')break;

if(ch>='a'&&ch<='z'||ch>='A'&&ch<='Z')

n++;

}

printf("Numberoflettersis%d.\nw,n);

)

23.编程求水仙花数。所谓水仙花数是指各位数字立方和等于该数自身的三位正整数。

如:153=13+53+33

参考答案:

♦♦include"stdio.h"

voidmain()

{inti,j,k,m,n;

for(i=l;i<=9;i++)

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

for(k=0;k<=9;k++)

{m=i*i*i+j*j*j+k*k*k;

n=100*i+10*j+k;

if(m=n)printf(“%d\n",m);

)

)

24.ttinclude"stdio.h"

voidmainO

{charch,n;

for(n=0;(ch=getchar())!=10;n++)putchar(ch-32);

printf("%d\n",n);

)

若程序输入为swjtuqa表示回车键),则程序输出是。(3分)

参考答案:SWJTU5

25.写出下列C语言表达式的求值结果。

2+023»l(6)5!=

1(7)!!(2>3)(8)

125%10*2(9)sizeof

(0.25)(10)1/2*(3+5)(11)

参考答案:

(6)10(7)1(8)

0(9)10

(10)8(11)0

26.结构化程序设计只需要使用三种程序结构,分别是顺序结构、分支结构和(5)结

构。

参考答案:(5)循环(重复)

第五次

22.

main()

{intx=2,y=-l,z=2;

if(x<y)<span=〃〃>

if(y<0)z=0;

elsez+=l;

printf(“%d\n",z);

)

写出程序输出结果(1)o

参考答案:2

23.下面程序的运行结果是(2)o

voidfl(void)

{intx=l;

staticy=2;

x++;

y++;

printf("%d,%d\n”,x,y);

)

voidmainO

{intk;

for(k=l;k<=3;k++)fl();

)

参考答案:

2,3错一行扣1分

2,4无逗号扣1分

2,5无换行扣1分

24.ttinclude"stdio.h"

voidmain()

{chara[61],*s;intn;

gets(a);

for(s=a;*s;s++)if(*s>='A'&&*s<='V)*s+=32;

puts(a);

}

若程序的输入为SWJTU,则输出结果为(3)o

参考答案:swjtu

25.^include"stdio.h”

^defineN5

intswap(int*p,int*q)

{intt;

if(p<q){t="*p;*p=*q;*q=t;}

returnp<q;<>

)

voidf(inta[],intm)

{int*p,*q;

p=a;q=a+m;

while(swap(p,q))

{p++;q—}

)

voidmain()

{int叫a[N];

for(m=0;m<n;m++)>

f(a,N-l);

for(m=0;m<n;m++)>

)

若程序的输入为89234,则输出结果为(4)。

参考答案:43298

26.下面程序的功能是输出100至1000以内的素数,请填空使之完善。

#include(1)

main()

{intm,k,j;

for(m=100;m<=l000;m++)

{k=sqrt(m);

for(j=2;⑵;j++)

if(m%j(3)0)break;

if((4))printf(a%5dn,m);

)

}

参考答案:⑴“math.h"(2)j<=k(3)

=(4)j>k或j>=k+l

27.下面程序的功能是统计字符文件a.txt中有多少个空格,请填空使之完善。

^include"stdio.h"

main()

{FILE*fp;charch;intn=(5);

if(!(fp=fopen(aa.txt99,(6)))){printf(Fileopen

correct!\n");exit(0);}

while((7)))

{ch=fputc(fp);if(feof(pl))break;

if((8)n++;

)

printf("n=%d\n”,n);

fclose(fp);

}

}

参考答案:⑸0(6)”

r”(7)feof(fp)(8)ch==',

28.有如下语句:charA[卜{"SWJTU"};该字符串的长度是(3),

A[3]=(4)。

参考答案:(3)5(4)'T'(允许无单引号和写ASCH码84)

29.若有定义intx=5,n=5;则执行语句x+=n++;后,x的值=(5),n

的值=(6).

参考答案:(5)10(6)6

30.若有inta=2,b=l,c=0;执行语句c=a++-b-后,变量c的值为(14)b

的值

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论