C实验报告答案--2015年.docx

上传人:聆听****声音 文档编号:24451 上传时间:2023-04-28 格式:DOCX 页数:78 大小:89.15KB
下载 相关 举报
C实验报告答案--2015年.docx_第1页
第1页 / 共78页
C实验报告答案--2015年.docx_第2页
第2页 / 共78页
C实验报告答案--2015年.docx_第3页
第3页 / 共78页
C实验报告答案--2015年.docx_第4页
第4页 / 共78页
C实验报告答案--2015年.docx_第5页
第5页 / 共78页
C实验报告答案--2015年.docx_第6页
第6页 / 共78页
C实验报告答案--2015年.docx_第7页
第7页 / 共78页
C实验报告答案--2015年.docx_第8页
第8页 / 共78页
C实验报告答案--2015年.docx_第9页
第9页 / 共78页
C实验报告答案--2015年.docx_第10页
第10页 / 共78页
C实验报告答案--2015年.docx_第11页
第11页 / 共78页
C实验报告答案--2015年.docx_第12页
第12页 / 共78页
C实验报告答案--2015年.docx_第13页
第13页 / 共78页
C实验报告答案--2015年.docx_第14页
第14页 / 共78页
C实验报告答案--2015年.docx_第15页
第15页 / 共78页
C实验报告答案--2015年.docx_第16页
第16页 / 共78页
C实验报告答案--2015年.docx_第17页
第17页 / 共78页
C实验报告答案--2015年.docx_第18页
第18页 / 共78页
C实验报告答案--2015年.docx_第19页
第19页 / 共78页
C实验报告答案--2015年.docx_第20页
第20页 / 共78页
亲,该文档总共78页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

C实验报告答案--2015年.docx

《C实验报告答案--2015年.docx》由会员分享,可在线阅读,更多相关《C实验报告答案--2015年.docx(78页珍藏版)》请在冰点文库上搜索。

C实验报告答案--2015年.docx

2.1C程序设计初步

一、实验目的

(1)熟悉C语言程序的运行环境(VC++6.0)。

(2)掌握C语言程序的上机步骤,了解运行C程序的方法。

(3)掌握C语言程序的书写格式和C语言程序的结构。

二、实验容(均要求给出运行结果)

1.程序改错题

(1)以下程序实现计算x×y的值并将结果输出。

请改正程序中的错误。

#include"stdio.h"

voidmain()

/**********FOUND**********/

{intx=y=4;

z=x*y;

/**********FOUND**********/

printf("z=%d/n",Z);

}

答案:

=======(答案1)=======

intx=,4,y=4,z;

=======(答案2)=======

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

(2)以下程序实现输入圆的半径,求圆的周长。

请改正程序中的错误。

#include "stdio.h"

voidmain()

{intr;

float l;

printf("Enterr:

");

scanf("%d",&r);

/**********FOUND**********/

l=2πr

/**********FOUND**********/

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

}

答案:

=======(答案1)=======

l=2*3.14*r;

=======(答案2)=======

printf("l=%f\n", l);

2.程序填空题

(1) 下面程序能对两个整型变量的值进行交换,请填空。

#include "stdio.h"

voidmain()

{inta=3,b=4,t;

t=a;

/***********SPACE***********/

【?

】;

/***********SPACE***********/

【?

】;

printf("a=%d,b=%d\n",a,b);

}

答案:

=======(答案1)=======

a=b

=======(答案2)=======

b=t

(2)下面程序不用第三个变量,实现两个数的对调操作。

#include

voidmain()

{inta,b;

scanf("%d%d",&a,&b);

printf("a=%d,b=%d\n",a,b);

/***********SPACE***********/

a= 【?

】 ;

/***********SPACE***********/

b= 【?

】 ;

/***********SPACE***********/

a= 【?

】 ;

printf("a=%d,b=%d\n",a,b);

}

答案:

=======(答案1)=======

a+b

=======(答案2)=======

a-b

=========或=========

a-b

=======(答案3)=======

a-b

=========或=========

a-b

3.程序设计题

功能:

编程实现从键盘输入任意1个大写字母,转换成小写字母后输出。

答案:

#include

voidmain()

{ charc,d;

scanf("%c",&c);

d=c+32 ;

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

}

2.2顺序结构程序设计

一、实验目的

(1)掌握赋值语句的功能和使用方法。

(2)掌握C语言的数据类型,熟悉不同类型变量的定义及赋值的方法。

(3)学会使用C语言的有关算术运算符,以及包含这些运算符的表达式。

(4)掌握简单数据类型的输入输出方法,能正确使用格式控制符。

(5)学习编制简单的C程序。

二、实验容(均要求给出运行结果)

1.程序改错题

(1)以下程序输入一个十进制整数,输出与之对应的八进制数与十六进制数。

例如,输入31,输出37(八进制)和1F(十六进制)。

请改正程序中的错误。

#include

voidmain()

{/**********FOUND**********/

n;

printf("输入一个十进制整数:

");

/**********FOUND**********/

scanf("%d",n);

/**********FOUND**********/

printf("对应的八进制整数是%O\n",n);

printf("对应的十六进制整数是%X\n",n);

}

答案:

=======(答案1)=======

int n;

=======(答案2)=======

scanf("%d",&n);

=======(答案3)=======

printf("对应的八进制整数是%o\n",n);

(2) 下列程序的功能是计算表达式x=1/2+的值,请改正程序中的错误。

#include"stdio.h"

/**********FOUND**********/

voidmain()

{inta,b;

floatx;

scanf("%d,%d",&a,&b);

/**********FOUND**********/

x=1/2+sqrt(a+b);

/**********FOUND**********/

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

}

答案:

=======(答案1)=======

#include"math.h”

=======(答案2)=======

x=1./2+sqrt(a+b);

=======(答案3)=======

printf("x=%f\n",x);

2.程序填空题

(1)请填写以下程序,要求输出结果如下:

A,B

65,66

#include

voidmain()

{/***********SPACE***********/

chara,【?

】;

/***********SPACE***********/

a=【?

】;

b='b';

a=a-32;

/***********SPACE***********/

b=b-【?

】;

printf("%c,%c\n%d,%d\n",a,b,a,b);

}

答案:

=======(答案1)=======

b

=======(答案2)=======

'a'

=========或=========

97

=======(答案3)=======

32

(2)下列程序的功能是要求输出如下结果,请填入合适的变量完善程序。

b=-1a=65535

a=65534

a=30b=6c=5

#include

voidmain()

{/***********SPACE***********/

intb=-1,【?

】;

unsignedshortinta;

/***********SPACE***********/

a=【?

】;

printf("b=%da=%u\n",b,a);

/***********SPACE***********/

【?

】+=b;

printf("a=%u\n",a);

/***********SPACE***********/

b=(a=30)/【?

】;

printf("a=%db=%dc=%d\n",a,b,c);

}

答案:

=======(答案1)=======

c

=======(答案2)=======

b

=======(答案3)=======

a

=======(答案4)=======

(c=5)

3.程序设计题

功能:

输入摄氏温度c,求华氏温度f。

转换公式为 f=9/5c+32,输出结果取两位小数。

(说明:

因为关于函数调用的知识在第7章讲解,所以在现阶段本程序的设计可以改用一个主函数来完成。

#include

doublefun(doublem)

{/**********Program**********/

 

/**********End**********/

}

voidmain()

{doublec,f;

printf("请输入一个摄氏温度:

");

scanf("%lf",&c);

f=fun(c);

printf("华氏温度为:

%5.2f\n",f);

}

答案:

floatn;

n=9.0/5.0*m+32;

returnn;

2.3选择结构程序设计

一、实验目的

(1)掌握关系运算符、逻辑运算符、条件运算符的使用方法。

(2)掌握if语句和switch语句的使用方法。

(3)学会调试程序,并掌握一些简单的算法。

(4)掌握选择结构程序的设计技巧。

二、实验容(均要求给出运行结果)

1.程序改错题

(1)以下程序的功能是判断一个5位数是否为回文数,即12321是回文数,个位与万位相同,十位与千位相同。

请改正程序中的错误。

#include

voidmain()

{ /**********FOUND**********/

longge,shi,qian;wan,x;

scanf("%ld",&x);

/**********FOUND**********/

wan=x%10000;

qian=x%10000/1000;

shi=x%100/10;

ge=x%10;

/**********FOUND**********/

if(ge==wan||shi==qian)

printf("thisnumberisahuiwen\n");

else

printf("thisnumberisnotahuiwen\n");

}

答案:

=======(答案1)=======

longge,shi,qian,wan,x;

=======(答案2)=======

wan=x/10000;

=======(答案3)=======

if(ge==wan&&shi==qian)

=========或=========

if(shi==qian&&ge==wan)

(2) 利用条件运算符的嵌套来完成此题:

学习成绩为90分以上(包括90分)的学生用A表示,60~89分的用B表示,60分以下的用C表示。

请改正程序中的错误。

#include

voidmain()

{ intscore;

/**********FOUND**********/

char*grade;

printf("pleaseinputascore\n");

/**********FOUND**********/

scanf("%d",score);

/**********FOUND**********/

grade=score>=90?

'A';(score>=60?

'B':

'C');

printf("%dbelongsto%c\n",score,grade);

}

答案:

=======(答案1)=======

chargrade;

=======(答案2)=======

scanf("%d",&score);

=======(答案3)=======

grade=score>=90?

'A':

(score>=60?

'B':

'C');

2.程序填空题

(1) 以下程序实现输出x、y、z这3个数中的最大者。

#include

voidmain()

{intx=4,y=6,z=7;

/***********SPACE***********/

intu,【?

】;

if(x>y)

/***********SPACE***********/

【?

】;

else

u=y;

if(u>z)

v=u;

else

v=z;

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

}

答案:

=======(答案1)=======

v

=======(答案2)=======

u=x

(2) 输入某年某月某日,判断这一天是这一年的第几天。

#include

voidmain()

{intday,month,year,sum,leap;

printf("\npleaseinputyear,month,day\n");

scanf("%d,%d,%d",&year,&month,&day);

switch(month)

{case1:

sum=0;break;

case2:

sum=31;break;

case3:

sum=59;break;

/***********SPACE***********/

case4:

【?

】;break;

case5:

sum=120;break;

case6:

sum=151;break;

case7:

sum=181;break;

case8:

sum=212;break;

case9:

sum=243;break;

case10:

sum=273;break;

case11:

sum=304;break;

case12:

sum=334;break;

default:

printf("dataerror");break;

}

/***********SPACE***********/

【?

】;

/***********SPACE***********/

if(year%400==0||【?

】)

leap=1;

else

leap=0;

/***********SPACE***********/

if(【?

】)

sum++;

printf("itisthe%dthday.",sum);

}

答案:

=======(答案1)=======

sum=90

=======(答案2)=======

sum=sum+day

=========或=========

sum=sum+day

=======(答案3)=======

year%4==0&&year%100!

=0

=========或=========

(year%4==0&&year%100!

=0)

=======(答案4)=======

leap==1&&month>2

=========或=========

leap==1&&month>2

=========或=========

leap==1&&2

3.程序设计题

功能:

对某一浮点数保留2位小数,并对第三位小数进行四舍五入。

输出6位小数,后4位均为0。

(说明:

因受所学知识的限制,现阶段可以只用一个主函数来完成。

#include

#include"conio.h"

doublefun(floath)

{/**********Program**********/

 

/**********End**********/

}

voidmain()

{floatm;

printf("Enterm:

");

scanf("%f",&m);

printf("\nTheresultis%f\n",fun(m));

}

答案:

----------------------

inti;

i=(int)(h*1000)%10;

if(i>=5)

return(int)(h*100+1)/100.0;

else

return(int)(h*100)/100.0;

----------------------

2.4单层循环程序设计

一、实验目的

(1)掌握while语句、do-while语句和for语句的基本使用方法。

(2)掌握循环结构程序设计的一些常用算法。

二、实验容(均要求给出运行结果)

1.程序改错题

(1) 以下程序实现求出1×1+2×2+…+n×n≤1000中满足条件的最大的n。

#include

voidmain()

{intn,s;

/**********FOUND**********/

s==n=0;

/**********FOUND**********/

while(s>1000)

{++n;

s+=n*n;

}

/**********FOUND**********/

printf("n=%d\n",&n-1);

}

答案:

=======(答案1)=======

s=n=0;

=======(答案2)=======

while(s<=1000)

=======(答案3)=======

printf("n=%d\n",n-1);

(2) 一个球从100m高度自由落下,每次落地后反跳回原高度的一半,再落下,求它在第10次落地时,共经过多少米?

第10次反弹多高?

#include

voidmain()

{/**********FOUND**********/

floatsn=100.0;hn=sn/2;

intn;

/**********FOUND**********/

for(n=2;n<10;n++)

{sn=sn+2*hn;

/**********FOUND**********/

hn=hn%2;

}

printf("thetotalofroadis%f\n",sn);

printf("thetenthis%fmeter\n",hn);

}

答案:

=======(答案1)=======

floatsn=100.0,hn=sn/2;

=======(答案2)=======

for(n=2;n<=10;n++)

=========或=========

for(n=2;n<11;n++)

=======(答案3)=======

hn=hn/2;

2.程序填空题

(1)以每行5个数来输出300以能被7或17整除的偶数,并求出其和。

请填空。

#include

voidmain()

{inti,n,sum;

sum=0;

/***********SPACE***********/

【?

】;

/***********SPACE***********/

for(i=1; 【?

】 ;i++)

/***********SPACE***********/

if(【?

】)

if(i%2==0)

{sum=sum+i;

n++;

printf("%6d",i);

/***********SPACE***********/

if(【?

】)

printf("\n");

}

printf("\ntotal=%d\n",sum);

}

答案:

=======(答案1)=======

n=0

=======(答案2)=======

i<=300

=========或=========

i<300

=========或=========

300>=i

=========或=========

300>i

=======(答案3)=======

i%7==0||i%17==0

=========或=========

!

(i%7)||!

(i%17)

=========或=========

!

(i%17)||!

(i%7)

=========或=========

!

(i%7&&i%17)

=======(答案4)=======

n%5==0

=========或=========

!

(n%5)

=========或=========

n/5*5==n

(2) 计算平均成绩并统计90分以上的人数。

请填空。

#include

voidmain()

{intn,m;

floatgrade,average;

average=0.0;

/***********SPACE***********/

n=m=【?

】;

while

(1)

{/***********SPACE***********/

【?

】("%f",&grade);

if(grade<0)

break;

n++;

average+=grade;

/***********SPACE***********/

if(grade<90)

【?

】;

m++;

}

if(n)

printf("%.2f\n%d\n",average/n,m);

}

答案:

=======(答案1)=======

0

=======(答案2)=======

scanf

=======(答案3)=======

continue

3.程序设计题

功能:

求一个四位数的各位数字的立方和。

(说明:

因为关于函数调用的知识在第7章讲解,所以在现阶段本程序的设计可以改用一个主函数来完成。

#include

intfun(intn)

{/**********Program**********/

 

/**********End**********/

}

voidmain()

{intk;

k=fun(1234);

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

}

答案:

----------------------

intd,s=0;

while(n>0)

{d=n%10;

s+=d*d*d;

n/=10;

}

returns;

----------------------

2.5嵌套循环程序设计

一、实验目的

(1)掌握循环嵌套的程序设计方法。

(2)掌握break语句和continue语句的使用方法。

(3)掌握结构化程序设计的基本技巧和方法。

二、实验容(均要求给出运行结果)

1.程序改错题

(1)以下程序的功能是循环读取7个整数(1~50),每读取一个整数存入变量a,程序打印出a个*。

#include

voidmain()

{inti,a,n=1;

/**********FOUND**********/

while(n<7)

{do

{scanf("%d",&a);

}

/**********FOUND**********/

while(a<1&&a>50);

/**********FOUND**********/

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

printf("*");

printf("\n");

n++;

}

}

答案:

=======(答案1)=======

while(n<=7)

=========或=========

while(n<8)

=======(答案2)=======

while(a<1||a>50);

=========或=========

while(a>50||a<1);

=======(答案3)======

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

当前位置:首页 > 求职职场 > 简历

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2