C语言秋季作业试题和答案.docx

上传人:b****1 文档编号:1675157 上传时间:2022-10-23 格式:DOCX 页数:20 大小:25.06KB
下载 相关 举报
C语言秋季作业试题和答案.docx_第1页
第1页 / 共20页
C语言秋季作业试题和答案.docx_第2页
第2页 / 共20页
C语言秋季作业试题和答案.docx_第3页
第3页 / 共20页
C语言秋季作业试题和答案.docx_第4页
第4页 / 共20页
C语言秋季作业试题和答案.docx_第5页
第5页 / 共20页
点击查看更多>>
下载资源
资源描述

C语言秋季作业试题和答案.docx

《C语言秋季作业试题和答案.docx》由会员分享,可在线阅读,更多相关《C语言秋季作业试题和答案.docx(20页珍藏版)》请在冰豆网上搜索。

C语言秋季作业试题和答案.docx

C语言秋季作业试题和答案

[0039]《C语言》讲师:

邹显春

Z的值是3

i=1,max=0或max=i=0;max=i; a[max] 

36、设intm=3;floatn=12.6;charch=’a’;,若用输入语句实现上述三个变量的初始化结果且键入数据形式为:

3,12.6a<回车换行>,则scanf语句应是___________。

“%d,%f%c”,&m,&n,&ch

37、设inti;floatf=3.14;,执行i=(int)f;后,变量f的值是____________。

3.14

38、若定义函数时类型缺省,则该函数默认的类型是___________。

extern 

39、 设chars[]=”’Name\Address”;,s的长度是___________。

15

40、 设floata,b,c;,若a、b和c分别为三角形的三条边长,它们“能构成等边三角形”的逻辑表达式是____________。

(a+b=c)&&(a+c=b)&&(b+c>a) 

41、编写C语言程序的一般步骤什么?

在VC环境下,调试程序的基本步骤有哪些?

调试程序中常见的错误有哪些?

如何解决发现这些错误?

编写C语言程序的一般步骤:

分析问题、构建算法、描述算法、编码、调试。

在VC环境下,调试程序的基本步骤有编辑、编译、连接、执行

调试程序中常见的错误有语法错误和逻辑错误。

其中语法错误通过编译来实现,逻辑错误通过单步追踪和设置断点的方法来发现逻辑错误。

42、在C语言为什么规定对所有用到的变量要"先定义,后使用”?

这样的做有什么好处?

对所有用到的变量进行"先定义,后使用”的原因:

凡未被事先定义的,C语言不把他认作变量,这样的目的能是为了保证程序中的变量能被正确的使用。

好处:

    

(1)每一个变量被指定为一个确定类型,在编译时C语言就能为其分配相应的存储单元。

    

(2)指定每一个变量属于一个类型,便于在编译时检查在程序变量进行的运算合法性。

43、请给出C语言的主要数据类型,请你至少给出4种以上的数据类型实例。

主要数据类型有:

C语言包括基本类型(整型、字符型、浮点型(单、双精度型)枚举类型)、构造类型(数组、结构体、共用体类型)、指针类型、空类型。

整数型inta=2;短整型shortb=3;单精度floatc=1;字符型chard=abc

44、一个C程序由哪些要素构成,请给出一个C语言程序进行说明。

一个C程序由若干函数组成,但至少一个主函数。

而每个函数包括函数的首部和函数体。

程序:

/*注释开始 

**filename:

pun.c

** 

**(C)2013RongbingTang

** 

**Thisprogramprintsastatement 

**"ToC,ornottoC:

that'snotaproblem."

注释结束*​

45、 编一程序求:

1+(1+2)+(1+2+3)+……+(1+2+3+……+10)。

#include"stdio.h"

main()

{

inti,s=0,t=0;

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

{t+=i;s+=t;}

printf("%d",s);

}

46、C语言程序包括哪些三种基本结构?

请给出这三种基本结构的传统流程图或N-S图

C语言程序包括哪些三种基本结构:

顺序结构、选择(或分支)结构、循环结构.三种基本结构图示依据作业情况评定

Ø顺序结构

顺序结构是一种最基本、最简单的程序结构。

先执行A,再执行B,A与B是按照顺序执行。

Ø选择(或分支)结构

根据条件是否成立而去执行不同的程序模块。

当条件P为真时,执行A,否则执行B,即要么执行A,要么执行B。

Ø循环结构

循环结构是指重复执行某些操作,重复执行的部分称为循环体。

47、什么是函数的原型?

其作用是什么?

在这些作用中如何使用?

答:

若自定义了一个函数,则该函数的首部称之为该函数的原型

函数原型的作用:

调用函数的接口;用于原型声明

其中函数的调用方法:

函数(实在参数)

函数的原型声明:

当被调用函数在调用函数之后时,必须进行原型声明,在程序最前面或在调用函数中进行声明,声明方法:

函数的首部;

48、什么是内部函数和外部函数?

内部函数:

一个函数只能被本文件中的其它函数调所用,在定义时使用static。

外部函数:

一个函数不光是被本文件中其它函数调用,还可以被其它文件中的函数调用,定义时用extern。

extern可缺省。

49、讨论题

1.设floata,b,c;,若a、b和c分别为三角形的三条边长,它们“能构成等边三角形”的逻辑表达式是____________。

2.设inti;floatf=3.14;,执行i=(int)f;后,变量f的值是____________。

3.设chars[]=”\t\’Name\\Address\n”;,s的长度是___________。

4.设intx=1,y=3,z;,执行z=x>y?

++x:

y++;后,z的值是____________。

5.设intm=3;floatn=12.6;charch=’a’;,若用输入语句实现上述三个变量的初始化结果且键入数据形式为:

3,12.6a<回车换行>,则scanf语句应是___________。

6.若定义函数时类型缺省,则该函数默认的类型是___________。

7.设inta[5]={l,3,5,7,9},*p=&a[2];,则++(*p)的值是_______

8.以下程序的功能是:

从键盘上输入若干个学生的成绩,统计计算出平均成绩,并输出低于平均分的学生成绩,用输入负数结束输入。

请填空。

main()

    {floatx[1000],sum=0.0,ave,a;

    intn=0,i;

    printf("Entermark:

\n”);scanf("%f”,&a);

    while( 

(1)  ) 

{sum___

(2)____;x[n]=a ;n++;

scanf("%f”,&a);}

    ave=____(3)___;

    printf("Output:

\n”);

    printf("ave=%f\n”,ave);

    for(i=0;i;i++) if(x[i]

 }

9.下列程序的功能是在数组a中寻找最大值的下标,输出数组a中的最大值及其下标。

请填空:

  #include"stdio.h"

voidmain()

{inta[10],i,max;

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

      scanf("%d",&a[i]);

   for(  

(1)   ;i<10;i++)

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

(2)   

      printf("最大值为:

%d ,下标是:

%d",    (3) ,max);

}

10、下列程序的功能是:

从键盘输入10数,找出其中的素数并按降序输出这些素数。

请根据给定的程序和程序的功能完善该程序。

(每空2分,共6分)。

#include

#include

intf(intx)

{inti;

 for(i=2;i<=sqrt(x);i++)

  if(x%i==0)return0;

     

(1)  

}

voidmain()

{inta[10],i,n=0,j,t;

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

  scanf("%d",&a[i]);

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

  if(

(2))n++;

  elsea[i]=0;

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

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

    if((3) ){t=a[j];a[j]=a[j+1];a[j+1]=t;}

 printf("共有%d个素数,它们是:

",n);

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

   if(a[i]!

=0)printf("%d ",a[i]);

}

  11.从键盘输入10个学生的姓名、性别和成绩,计算并输出这些学生的平均成绩。

  #defineN10

  structstudent

  {

  charname[20];

  charsex;

  intscore;

  }stu[N];

  voidmain()

  {

  inti;

  floataver,sum=0;

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

  {scanf(“%d,%c%s”,

(1)_________);/*第一空*/

  sum=sum+_

(2)________;/*第二空*/

  }

  aver=_(3)_________;/*第三空*/

  printf(“aver=%6.2f\n”,aver);

  }

  12.从键盘输入一串字符(以“?

”作为结束标志),保存到文本文件text.txt中。

  #include“stdio.h”

  voidmain()

  {

  FILE

(1)______;/*第一空*/

  charch;

  if((fp=fopen(“text.txt’’,_

(2)______))==NULL)exit(0);/*第二空*/

  while((ch=getchar())!

=’?

’)fputc(ch,_(3)_______);/*第三空*/

  fclose(fp);

  }

  13.用递归方法计算学生年龄,已知第一位学生年龄为10岁,其余学生一个比一个大2岁,求第5位学生的年龄。

  递归公式如下:

  age(n)=

  intage(intn)

  {

  if(n==1)return(__

(1)_____);/*第一空*/

  elsereturn(_

(2)________);/*第二空*/

  }

  voidmain()

  {

  printf(‘‘%d\n”,_(3)________);/*第三空*/

  }

14.依据下列提供的程序回答问题

(1)提供程序的功能是什么?

  #include"stdio.h"

voidmain()

{intscore[10],i,max;

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

     {printf("请输入第%d个学生的成绩(0-100):

\n",i+1);

     scanf("%d",&score[i]);}

   for(i=1,max=0;i<10;i++)

      if(score[i]>score[max]) max=i;   

      printf("最高成绩为:

%d,最高成绩是第%d个:

%d",score[max],max+1);

}

(2)请依据提供的程序画出其中的传统流程图或N-S图。

(3)在VC6.0环境下,运行上述程序时,若输入数据如89、87、77、67、87、80、97、80、97、74、58、84,则输出结果是什么?

50、下列表达式的值是多少?

处理表达式后,a的值是多少?

假设整数类型变

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 医药卫生 > 临床医学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1