复习试题1综述.docx

上传人:b****5 文档编号:28522616 上传时间:2023-07-18 格式:DOCX 页数:39 大小:170.32KB
下载 相关 举报
复习试题1综述.docx_第1页
第1页 / 共39页
复习试题1综述.docx_第2页
第2页 / 共39页
复习试题1综述.docx_第3页
第3页 / 共39页
复习试题1综述.docx_第4页
第4页 / 共39页
复习试题1综述.docx_第5页
第5页 / 共39页
点击查看更多>>
下载资源
资源描述

复习试题1综述.docx

《复习试题1综述.docx》由会员分享,可在线阅读,更多相关《复习试题1综述.docx(39页珍藏版)》请在冰豆网上搜索。

复习试题1综述.docx

复习试题1综述

[题目内容]编写一个用户自定义函数,函数的功能是:

将华氏温度转换为摄氏温度。

编写一个程序,输出一个华氏温度与摄氏温度的对照表,其中华氏温度从32开始到100为止,步长为4。

[输入]无

[输出]如下:

华氏温度摄氏温度

320.00

362.22

404.44

446.67

488.89

5211.11

5613.33

6015.56

6417.78

6820.00

7222.22

7624.44

8026.67

8428.89

8831.11

9233.33

9635.56

10037.78

[提示]主函数使用for(f=32;f<=100;f=f+4)

#include

voidmain()

{

floatftoc(intf);

intf;

printf("华氏温度摄氏温度\n");

for(f=32;f<=100;f=f+4)

printf("%d%.2f\n",f,ftoc(f));

}

floatftoc(intf)

{

floatc;

c=5*(f-32)/9.0;

returnc;

}

[题目内容]某班同学检查身体,身高测量的结果如下:

1.65,1.90,1.81,1.55,1.56,1.70,1.72,1.65,1.69,1.75,1.73,1.85,1.74,1.71,1.60,1.50,1.68,1.73,1.72,1.80。

编写程序,从键盘将这组数据输入到数组中保存,并输出;然后,求出这些同学身高的最大值和最小值以及平均值,并输出。

(数据保留2位小数)

[输入]某班同学身高测量

[输出]某班同学身高测量,身高的最大值和最小值以及平均值。

[提示]定义一维数组,利用for循环语句从键盘逐个输入身高数据、输出数组中的每个元素;定义最大值、最小值、平均值变量,利用for循环语句求数组元素中的最大值、最小值、和值,再求出平均值;利用printf输出结果。

#include

voidmain()

{

floatx[20];inti;

floatmax,min,sum,ave;

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

scanf("%f",&x[i]);

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

printf("%.2f\t",x[i]);

max=x[0];min=x[0];sum=x[0];

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

{if(max

if(min>x[i])min=x[i];

sum=sum+x[i];

}

ave=sum/20;

printf("\n%.2f\n%.2f\n%.2f\n",max,min,ave);

}

3.[目的]应用所学知识解决实际问题。

[题目内容]数值的分布范围。

一份计算机市场调查报告显示,市场上PC机的售价不同:

6500,4990,5500,7200,6810,5700,5660,6900,5850,6250。

编写程序,计算平均售价以及价格范围。

(数据保留2位小数)

[输入]市场上PC机的售价

[输出]平均售价、价格范围

[提示]分布范围是对一系列数值进行统计分析的方法之一。

分布范围是指该系列数值中最大值与最小值之差。

即分布范围=最大值-最小值。

#include

voidmain()

{

inti,x[10],max,min,sum,range;

floatave;

printf("\n请输入售价:

\n");

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

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

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

printf("%d",x[i]);

printf("\n");

max=min=sum=x[0];

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

{

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

if(x[i]

sum=sum+x[i];

}

range=max-min;

ave=sum/10.0;

printf("ave=%f\trange=%d\n",ave,range);

}

[目的]掌握循环次数已知的循环控制处理方法。

[题目内容]编写一个程序,其功能为:

求1-100之间的奇数之和。

[输入]无

[输出]计算结果

[提示]使用三种循环语句均可。

#include"stdio.h"

voidmain()

{

inti,sum=0;

for(i=1;i<=100;i=i+2)

sum=sum+i;

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

}

4.[目的]掌握循环次数已知的循环控制处理方法。

[题目内容]编写一个程序,其功能为:

输出100以内能被7整除的数。

[输入]无

[输出]判断结果

[提示]使用三种循环语句均可。

#include"stdio.h"

voidmain()

{

inti,sum=0;

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

if(i%7==0)printf("%d\t",i);

}

5.[目的]掌握循环次数已知的循环控制处理方法。

[题目内容]编写一个程序,其功能为:

计算并输出一年12个月的总降雨量和平均降雨量。

[输入]12个月的降雨量

[输出]总降雨量和平均降雨量

[提示]使用for循环语句,和值、平均值变量采用双精度类型,和值初值设为零。

#include"stdio.h"

voidmain()

{

inti;

doublex,sum=0,ave;

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

{

printf("请输入%d月的降雨量:

",i);

scanf("%lf",&x);

sum=sum+x;

}

ave=sum/12;

printf("sum=%lf\tave=%lf\n",sum,ave);

}

6.[目的]掌握循环次数已知的循环控制处理方法。

[题目内容]编写一个程序,其功能为:

在0°到90°之间每隔5°输出一行数据,打印一个表。

每行中包括5个项目:

角度数,以及它所对应的正弦、余弦、正切、余切函数值。

[输入]无

[输出]如下表格

[提示]使用for循环语句和if语句,注意0°、90°时的正切和余切的处理。

#include"stdio.h"

#include"math.h"

#definePI3.1415926

voidmain()

{

inti;

doubleih;

printf("角度数正弦余弦正切余切\n");

for(i=0;i<=90;i=i+5)

{

ih=i*PI/180;

if(i==0)

printf("%d\t%lf\t%lf\t%lf\t%c\n",i,sin(ih),cos(ih),sin(ih)/cos(ih),'-');

elseif(i==90)

printf("%d\t%lf\t%lf\t%c\t%lf\n",i,sin(ih),cos(ih),'-',cos(ih)/sin(ih));

else

printf("%d\t%lf\t%lf\t%lf\t%lf\t\n",i,sin(ih),cos(ih),sin(ih)/cos(ih),cos(ih)/sin(ih));

}

}

7.[目的]掌握循环次数已知的循环控制处理方法。

[题目内容]编写一个程序,其功能为:

输入10个字符,输出各个字符的ASCII编码。

[输入]10个字符

[输出]各个字符的ASCII编码

[提示]使用for循环语句,字符的输入不需要分隔符,可以连续输入10个字符。

#include"stdio.h"

voidmain()

{

inti;

charch;

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

{

printf("请输入一个字符:

");

scanf("%c",&ch);

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

}

}

8.[目的]掌握循环次数未知的循环控制处理方法。

[题目内容]编写一个程序,其功能为:

计算一批货物的总值,输入货物单价和数量。

事先不知道需要统计的货物有多少种。

[输入]货物单价和数量

[输出]货物的总值

[提示]使用while循环语句或do…while语句,设计一个特殊值作为循环结束的标志,例如,单价值为零。

#include"stdio.h"

voidmain()

{

doubleprice,num,sum=0;

printf("请输入货物单价和数量:

");

scanf("%lf%lf",&price,&num);

while(price!

=0)

{

sum=sum+price*num;

printf("请输入货物单价和数量:

");

scanf("%lf%lf",&price,&num);

}

printf("sum=%lf\n",sum);

}

9.[目的]掌握递推法的处理方法。

[题目内容]编写一个程序,其功能为:

输出fibnocci数列的前20项,每行输出5个。

说明:

fibnocci数列的前两项均为1,以后各项等于其前两项之和。

[输入]无

[输出]fibnocci数列的前20项

[提示]使用for循环语句以及递推算法,fibnocci数列的前两项均为1,以后各项等于其前两项之和。

#include"stdio.h"

voidmain()

{

inti,f1,f2,f3,n;

f1=1;f2=1;

printf("\n%8d%8d",f1,f2);

n=2;

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

{

if(n%5==0)printf("\n");

f3=f1+f2;

printf("%8d",f3);n++;

f1=f2;f2=f3;

}

printf("\n");

}

(1计算a+|b|2判断一个整数是否可以被3和5整除)

1.[目的]掌握判断一个字符型数据是否数字字符的方法,以及数字字符转换为相应整数的方法。

[题目内容]从键盘输入一个字符型数据,若输入一个数字字符('0'-'9'),则将其转换成相应的整数显示出来;若输入其它字符,则显示出错信息。

[输入]一个字符型数据

[输出]整数或出错信息

[提示]根据字符型数据的ASCII码值是否在‘0’字符与‘9’字符之间进行判断。

使用if…else…语句和复合语句。

#include"stdio.h"

voidmain()

{

charch;

intdch;

printf("请输入一个字符:

\n");

scanf("%c",&ch);

printf("输入的字符是:

%c\n",ch);

if(ch>='0'&&ch<='9')

{

dch=ch-'0';

printf("%c对应的整数是:

%d\n",ch,dch);

}

else

{

printf("%c不是数字字符\n",ch);

}

}

2.[目的]掌握条件表达式的使用

[题目内容]编写一个程序,其功能为:

从键盘输入三个数x、y、z,判断x+y=z是否成立,若成立输出“x+y=z”的信息,否则输出“x+y!

=z”的信息。

[输入]三个数x、y、z

[输出]“x+y=z”或“x+y!

=z”

[提示]条件判断表达式x+y==z

#include"stdio.h"

voidmain()

{

floatx,y,z;

printf("请输入x,y,z:

\n");

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

if(x+y==z)

printf("x+y=z\n");

else

printf("x+y!

=z\n");

}

3.[目的]掌握求最大值最小值的方法。

[题目内容]编写一个程序,其功能为:

输入三个整数,输出最大数和最小数。

[输入]三个整数

[输出]最大值和最小值

[提示]设置最大值变量max和最小值变量min;首先比较a,b的大小,并把大数存入max,小数存入min;然后最大值变量max和最小值变量min再与c比较,若c大于max,则max取值c,否则保持不变;如果c小于min,则min取值c,否则保持不变。

最后输出max和min的值。

使用if…else…语句、if语句以及复合语句。

#include"stdio.h"

voidmain()

{

inta,b,c,max,min;

printf("请输入三个整数a,b,c:

\n");

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

printf("三个整数为:

\n");

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

if(a>b)

{

max=a;

min=b;

}

else

{

max=b;

min=a;

}

if(c>max)max=c;

if(c

printf("max=%dmin=%d\n",max,min);

}

4.[目的]运用已学知识解决实际问题。

[题目内容]如下两个线性方程组的两个未知数为x1和x2:

ax1+bx2=m

cx1+dx2=n

该方程的唯一解为(ad-cb不等于零时):

请编写一个程序,读取a、b、c、d的值,计算x1和x2的值。

如果ad-cd等于零,应给出适当的提示信息。

[输入]方程的系数a、b、c、d的值

[输出]当ad-cb不等于零时,输出方程的解x1、x2的值;当ad-cb等于零时,输出提示信息。

[提示]用if…else…语句和复合语句实现。

#include"stdio.h"

voidmain()

{

floata,b,c,d,m,n,x1,x2;

printf("请输入方程的系数a,b,c,d,m,n:

\n");

scanf("%f%f%f%f%f%f",&a,&b,&c,&d,&m,&n);

printf("方程为:

\n");

printf("%fx1+%fx2=%f\n",a,b,m);

printf("%fx1+%fx2=%f\n",c,d,n);

if((a*d-c*b)==0)

{

printf("\n方程无解。

\n");

}

else

{

x1=(m*d-n*c)/(a*d-c*b);

x2=(n*a-m*c)/(a*d-c*b);

printf("\nx1=%f\n",x1);

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

}

}

5.[目的]运用已学知识解决实际问题。

[题目内容]某产品生产成本c=c1+mc2,其中c1为固定成本,c2为单位产品可变成本。

当生产数量m<10000时,c1=20000元,c2=10元;当生产数量m≥10000时,c1=40000元,c2=5元;编写一个程序,其功能为:

分别计算出生产数量为6000以及25000时,总生产成本及单位生产成本。

[输入]生产数量

[输出]生产数量、总生产成本、单位可变成本

[提示]

#include"stdio.h"

voidmain()

{

intm,c1,c2,c;

printf("请输入生产数量:

\n");

scanf("%d",&m);

if(m<10000)

{

c1=20000;

c2=10;

}

else

{

c1=40000;

c2=5;

}

c=c1+m*c2;

printf("生产数量=%d\n",m);

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

printf("单位生产成本=%d\n",m*c2);

}

6.[目的]掌握分段函数的计算。

[题目内容]编写一个程序,计算下列函数:

y=

x

x<1

2x-1

1≤x<10

3x-11

X≥10

[输入]x值

[输出]y值

[提示]根据输入的x值的取值,计算y的值并输出。

使用if…elseif语句以及复合语句。

#include"stdio.h"

voidmain()

{

floatx,y;

printf("请输入x:

\n");

scanf("%f",&x);

printf("输入x=:

%f\n",x);

if(x<1)

{

y=x;

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

}

elseif(x>=1&&x<10)

{

y=2*x-1;

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

}

else

{

y=3*x-11;

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

}

}

7.[目的]掌握字符型变量的定义与使用,掌握大小写字母转换的算法。

[题目内容]编写一个程序,其功能为:

从键盘输入一个字符,判别该字符的类别,并输出向相应信息。

[输入]一个字符

[输出]显示“控制字符”、“数字字符”、“大写字母”、“小写字母”、“其它字符”信息。

[提示]根据输入字符的ASCII码来判别类型。

由ASCII码表可知ASCII值小于32的为控制字符。

在'0'和'9'之间的为数字,在'A'和'Z'之间为大写字母,在'a'和'z'之间为小写字母,其余则为其它字符。

使用if…elseif…语句。

#include"stdio.h"

voidmain()

{

charch;

printf("请输入一个字符:

\n");

scanf("%c",&ch);

printf("输入的字符是:

%c\n",ch);

if(ch<32)

printf("%c是控制字符。

\n",ch);

elseif(ch>='0'&&ch<='9')

printf("%c是数字字符。

\n",ch);

elseif(ch>='a'&&ch<='z')

printf("%c是小写字母字符\n",ch);

elseif(ch>='A'&&ch<='Z')

printf("%c是大写字母字符\n",ch);

else

printf("%c是其他字符。

",ch);

}

8.[目的]掌握标准数学函数使用。

[题目内容]编写一个程序,其功能为:

从键盘输入一元二次方程ax2+bx+c=0的各项系数a、b、c的值,判断方程实数解的不同情况,分别求解方程,并输出(结果保留两位小数,如无实根给出相应的信息)。

应用如下规则:

(1)若a、b的值为零,则没有解;

(2)若a为零,只有一个实数解;

(3)若b2-4ac为负数,则没有实数解;若b2-4ac为正数,有两个实数解;若b2-4ac为零,有两个相等的实数解。

[输入]一元二次方程ax2+bx+c=0的各项系数a、b、c

[输出]方程的实数解情况

[提示]包含标准数学函数头文件,使用标准数学函数sqrt(x)实现开平方计算,判别式b2-4ac,如果小于0,则输出“方程无实数根”,等于0,输出一个实根,结果使用双精度浮点数表示,%lf格式,大于0,输出两个不同的实数根,结果使用双精度浮点数表示,%lf格式。

#include"stdio.h"

#include"math.h"

voidmain()

{

floata,b,c;

doublex1,x2;

printf("请输入a,b,c:

\n");

scanf("%f%f%f",&a,&b,&c);

if(a==0&&b==0)

printf("a=%fb=%fc=%f方程无解!

\n",a,b,c);

elseif(a==0)

{

x1=-c/b;

printf("a=%fb=%fc=%fx=%lf\n",a,b,c,x1);

}

elseif(b*b-4*a*c>0)

{

x1=(-b+sqrt(b*b-4*a*c))/(2*a);

x2=(-b-sqrt(b*b-4*a*c))/(2*a);

printf("a=%fb=%fc=%fx1=%lfx2=%lf\n",a,b,c,x1,x2);

}

elseif((b*b-4*a*c)==0)

{

x1=(-b)/(2*a);

printf("a=%fb=%fc=%fx1=x2=%lf\n",a,b,c,x1);

}

else

printf("a=%fb=%fc=%f无实数解!

\n",a,b,c);

}

9.[目的]运用已学知识解决实际问题。

[题目内容]编写程序,输入三角形三边a、b、c,判断a、b、c能否构成三角形,若不能则输出相应的信息,若能则判断组成的是等腰、等边、直角还是一般三角形。

[输入]三角形三边a、b、c

[输出]不能构成三角形或能构成等腰、等边、直角、一般三角形的信息。

[提示]利用三角形两边之和大于第三边判断是否能够构成三角形,能够成三角形时再以等腰、等边、直角三角形的条件进行判断。

#include"stdio.h"

voidmain()

{

floata,b,c;

printf("请输入a,b,c:

\n");

scanf("%f%f%f",&a,&b,&c);

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

{

if(a==b&&b==c&&c==a)

printf("a=%fb=%fc=%f构成等边三角形!

\n",a,b,c);

else

if(a==b||b==c||c==a)

printf("a=%fb=%fc=%f构成等腰三角形!

\n",a,b,c);

elseif(a*a==b*b+c*c||b*b==a*a+c*c||c*c==a*a+b*b)

printf("a=%fb=%fc=%f构成直角三角形!

\n",a,b,c);

else

printf("a=%fb=%fc=%f构成一般三角形!

\n",a,b,c);

}

else

printf("a=%fb=%fc=%f不能构成三角形!

\n",a,b,c);

}

10.[目的]运用已学知识解决实际问题。

[题目内容]某个电力公司对其用户的收费规定如下:

用电数量收费标准

0~200x*0.5元

201~400100+(x-200)*0.65元

401~600230+(x-400)*0.8

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

当前位置:首页 > 自然科学 > 物理

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

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