c语言作业汇编.docx

上传人:b****1 文档编号:3024624 上传时间:2023-05-05 格式:DOCX 页数:55 大小:28.63KB
下载 相关 举报
c语言作业汇编.docx_第1页
第1页 / 共55页
c语言作业汇编.docx_第2页
第2页 / 共55页
c语言作业汇编.docx_第3页
第3页 / 共55页
c语言作业汇编.docx_第4页
第4页 / 共55页
c语言作业汇编.docx_第5页
第5页 / 共55页
c语言作业汇编.docx_第6页
第6页 / 共55页
c语言作业汇编.docx_第7页
第7页 / 共55页
c语言作业汇编.docx_第8页
第8页 / 共55页
c语言作业汇编.docx_第9页
第9页 / 共55页
c语言作业汇编.docx_第10页
第10页 / 共55页
c语言作业汇编.docx_第11页
第11页 / 共55页
c语言作业汇编.docx_第12页
第12页 / 共55页
c语言作业汇编.docx_第13页
第13页 / 共55页
c语言作业汇编.docx_第14页
第14页 / 共55页
c语言作业汇编.docx_第15页
第15页 / 共55页
c语言作业汇编.docx_第16页
第16页 / 共55页
c语言作业汇编.docx_第17页
第17页 / 共55页
c语言作业汇编.docx_第18页
第18页 / 共55页
c语言作业汇编.docx_第19页
第19页 / 共55页
c语言作业汇编.docx_第20页
第20页 / 共55页
亲,该文档总共55页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

c语言作业汇编.docx

《c语言作业汇编.docx》由会员分享,可在线阅读,更多相关《c语言作业汇编.docx(55页珍藏版)》请在冰点文库上搜索。

c语言作业汇编.docx

c语言作业汇编

1.

1.1.3编写程序,在屏幕上显示一个短句“ProgramminginCisfun!

”。

【问题描述】1.1.3编写程序,在屏幕上显示一个短句“ProgramminginCisfun!

”。

【输入形式】无

【输出形式】输出短句

【样例输入】无

【样例输出】ProgramminginCisfun!

-:

1:

#include

-:

2:

intmain(void)

1:

3:

{

1:

4:

printf("ProgramminginCisfun!

\n");

1:

5:

return0;

-:

6:

}

 

2.

1.1.4编程显示图案。

【问题描述】编写程序,在屏幕上显示如下图案。

****

***

**

*

【输入形式】无

【输出形式】图案

【样例输入】

【样例输出】

【样例说明】符号之间无空格

【评分标准】

-:

1:

#include

-:

2:

intmain(void)

1:

3:

{

1:

4:

printf("****\n***\n**\n*\n");

1:

5:

return0;

-:

6:

}

1.

2.1.5编程,输入一个三位正整数,求解并输出该数的个位数、十位数和百位数。

【问题描述】2.1.5编程,输入一个三位正整数,求解并输出该数的个位数、十位数和百位数。

【输入形式】输入三位正整数

【输出形式】依次输出个、十、百位,用空格分隔

【样例输入】152

【样例输出】251

-:

1:

#include

-:

2:

intmain(void)

2:

3:

{

-:

4:

intn;

2:

5:

scanf("%d",&n);

2:

6:

printf("%d%d%d\n",n%10,n/10%10,n/100);

2:

7:

return0;

-:

8:

}

2.

2.2.7编程计算并输出旅途时间。

【问题描述】2.2.7输入2个整数time1和time2,表示火车的出发时间和到达时间,计算并输出旅途时间。有效的时间范围是0000~2359(前两位表示小时,后两位表示分钟),不需要考虑出发时间晚于到达时间的情况。

【样例输入输出】(括号内为说明文字)

Entertime1:

712(出发时间是7:

12)

Entertime2:

1411(到达时间是14:

11)

Thetrainjourneytimeis6hours59minutes

-:

1:

#include

-:

2:

intmain(void)

2:

3:

{

-:

4:

inta,b,c,d,time1,time2;

2:

5:

printf("Entertime1:

");

2:

6:

scanf("%d",&time1);

2:

7:

printf("Entertime2:

");

2:

8:

scanf("%d",&time2);

2:

9:

a=time1%100;

2:

10:

b=time2%100;

2:

11:

if(b>=a){

1:

12:

c=(time2-time1)/100;

1:

13:

d=b-a;

-:

14:

}

-:

15:

else{

1:

16:

c=(time2-time1)/100;

1:

17:

d=b-a+60;

-:

18:

}

2:

19:

printf("Thetrainjourneytimeis%dhours%dminutes\n",c,d);

2:

20:

return0;

-:

21:

}

3.

2.2.8编程题,输入一个四位正整数,将其加密后输出。

【问题描述】2.2.8输入一个四位正整数,将其加密后输出。方法是将该数每一位上的数字加9,然后除以10取余,作为该位上的新数字,最后将千位和十位上的数字互换,百位和个位上的数字互换,组成加密后的新四位数。

【样例输入输出】(括号内为说明文字)

Enteranumber:

1257

Theencryptednumberis4601(每一位上的数字加9除以10取余后得0146,交换后得到4601)

-:

1:

#include

-:

2:

intmain(void)

2:

3:

{

-:

4:

intx,y,a,b,c,d;

2:

5:

printf("Enteranumber:

");

2:

6:

scanf("%d",&x);

2:

7:

d=x%10;

2:

8:

c=(x-d)%100/10;

2:

9:

b=(x/100)%10;

2:

10:

a=x/1000;

2:

11:

a=(a+9)%10;

2:

12:

b=(b+9)%10;

2:

13:

c=(c+9)%10;

2:

14:

d=(d+9)%10;

2:

15:

y=c*1000+d*100+a*10+b;

2:

16:

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

2:

17:

return0;

-:

18:

}

4.

2.3.5求1-1/4+1/7-1/10+1/13-1/16+…的前n项之和

【问题描述】

输入一个正整数n,计算1-1/4+1/7-1/10+1/13-1/16+…的前n项之和,输出时保留3位小数。

【输入形式】

从键盘输入一个正整数n。

【输入输出样例1】(下划线部分表示输入)

Entern:

3

sum=0.893

【输入输出样例2】(下划线部分表示输入)

Entern:

10

sum=0.819

【样例说明】

输入提示符后要加一个空格。

其中“:

”后要加一个且只能一个空格。

输出语句的“=”两边无空格。

英文字母区分大小写。

必须严格按样例输入输出。

-:

1:

#include

-:

2:

intmain(void)

4:

3:

{

-:

4:

inta,b,i,n;

-:

5:

doublem,sum;

4:

6:

printf("Entern:

");

4:

7:

scanf("%d",&n);

4:

8:

a=1;

4:

9:

b=1;

4:

10:

sum=0;

73:

11:

for(i=1;i<=n;i++){

69:

12:

m=a*1.0/b;

69:

13:

sum=sum+m;

69:

14:

a=-a;

69:

15:

b=b+3;

-:

16:

}

4:

17:

printf("sum=%.3f\n",sum);

4:

18:

return0;

-:

19:

}

-:

20:

.

2.4.3求组合数

【问题描述】

根据下列公式可以计算出从n个不同元素中取出m个元素(m≤n)的组合数。编写程序,输入2个正整数m和n(m≤n),计算并输出组合数。要求定义和调用函数fact(n)计算n!

函数类型为double。

【输入形式】

从键盘输入正整数m和正整数n。

【输入输出样例1】(下划线部分表示输入)

Enterm:

5

Entern:

12

result=792

【样例说明】

输入提示符后要加一个空格。

其中“:

”后要加一个且只能一个空格。

输出语句的“=”两边无空格。

英文字母区分大小写。

必须严格按样例输入输出。

-:

1:

#include

-:

2:

doublefact(doubles)

6:

3:

{

6:

4:

doublei,a=1;

50:

5:

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

44:

6:

a=a*i;

6:

7:

returna;

-:

8:

}

-:

9:

intmain()

2:

10:

{

-:

11:

doublex,y,m,n;

2:

12:

printf("Enterm:

");

2:

13:

scanf("%lf",&m);

2:

14:

printf("Entern:

");

2:

15:

scanf("%lf",&n);

2:

16:

y=fact(n-m);

2:

17:

m=fact(m);

2:

18:

n=fact(n);

2:

19:

x=n/(y*m);

2:

20:

printf("result=%.0f",x);

2:

21:

return0;

-:

22:

}

1.

3.1.3统计字符个数

【问题描述】

输入10个字符,统计其中英文字母、空格或回车、数字字符和其他字符的个数。

【输入形式】

从键盘输入正实数x的值。

【输入输出样例1】(下划线部分表示输入)

Input10characters:

Reold123?

letter=5,blank=1,digit=3,other=1

【样例说明】

输入提示符后要加一个空格。

例如“Input10characters:

”,其中“:

”后要加一个且只能一个空格。

输出语句的“=”两边无空格。

英文字母区分大小写。

必须严格按样例输入输出。

-:

1:

#include

-:

2:

intmain(void)

2:

3:

{

-:

4:

intdigit,i,letter,blank,other;

-:

5:

charch;

2:

6:

digit=letter=blank=other=0;

2:

7:

printf("Input10characters:

");

22:

8:

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

20:

9:

ch=getchar();

30:

10:

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

10:

11:

letter++;

16:

12:

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

6:

13:

digit++;

7:

14:

elseif((ch=='\n')||(ch==''))

3:

15:

blank++;

-:

16:

else

1:

17:

other++;

-:

18:

}

2:

19:

printf("letter=%d,blank=%d,digit=%d,other=%d\n",letter,blank,digit,other);

2:

20:

return0;

-:

21:

}

2.

3.1.7计算三角形周长和面积

【问题描述】

输入三角形的三边a,b,c,如果能构成一个三角形,输出面积area

和周长perimeter(保留两位小数);否则,输出

“Thesesidesdonotcorrespondtoavalidtriangle”

在一个三角形钟,任意两边之和大于第三边。

三角形面积计算公式:

area=sqrt(s*(s-a)*(s-b)*(s-c))

其中:

s=(a+b+c)/2

【输入形式】

输入三角形的三条边的数据。

【输入输出样例1】(下划线部分表示输入)

Enter3sidesofthetriangle:

553

area=7.15;perimeter=13.00【样例说明】

输入提示符后要加一个空格。

例如“Enter3sidesofthetriangle:

”,其中“:

”后要加一个且只能一个空格。

输出语句的“=”两边无空格。

英文字母区分大小写。

必须严格按样例输入输出。

-:

1:

#include

-:

2:

#include

-:

3:

intmain(void)

2:

4:

{

-:

5:

inta,b,c;

-:

6:

doublearea,perimeter,s;

2:

7:

printf("Enter3sidesofthetriangle:

");

2:

8:

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

4:

9:

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

2:

10:

s=(a+b+c)/2.00;

2:

11:

area=sqrt(s*(s-a)*(s-b)*(s-c));

2:

12:

perimeter=a+b+c;

2:

13:

printf("area=%.2f;perimeter=%.2f\n",area,perimeter);

-:

14:

}

-:

15:

else{

#####:

16:

printf("Thesesidesdonotcorrespondtoavalidtriangle");

-:

17:

}

2:

18:

return0;

-:

19:

}

-:

20:

3.

3.1.8计算个人所得税

【问题描述】

输入一个职工的月薪salary,输出应交的个人所得税tax(保留两位小数)。

计算方式:

tax=rate*(salary-850)

当salary<=850时,rate=0;

当850

当1350

当2850

当5850

【输入形式】

输入月薪。

【输入输出样例1】(下划线部分表示输入)

Enterthesalary:

1010.87

tax=8.04

【输入输出样例2】(下划线部分表示输入)

Enterthesalary:

32098.76

tax=6249.75

【输入输出样例3】(下划线部分表示输入)

Enterthesalary:

800

tax=0.00

【输入输出样例4】(下划线部分表示输入)

Enterthesalary:

4010

tax=474.00

【输入输出样例5】(下划线部分表示输入)

Enterthesalary:

2850

tax=200.00

【样例说明】

输入提示符后要加一个空格。

例如“Enterthesalary:

”,其中“:

”后要加一个且只能一个空格。

输出语句的“=”两边无空格。

英文字母区分大小写。

必须严格按样例输入输出。

-:

1:

#include

-:

2:

intmain(void)

6:

3:

{

-:

4:

doubletax,rate,salary;

6:

5:

printf("Enterthesalary:

");

6:

6:

scanf("%lf",&salary);

6:

7:

if(salary<=850){

1:

8:

rate=0;

1:

9:

tax=rate*(salary-850);

-:

10:

}

5:

11:

elseif(salary<=1350){

1:

12:

rate=0.05;

1:

13:

tax=rate*(salary-850);

-:

14:

}

4:

15:

elseif(salary<=2850){

1:

16:

rate=0.1;

1:

17:

tax=rate*(salary-850);

-:

18:

}

3:

19:

elseif(salary<=5850){

1:

20:

rate=0.15;

1:

21:

tax=rate*(salary-850);

-:

22:

}

-:

23:

else{

2:

24:

rate=0.2;

2:

25:

tax=rate*(salary-850);

-:

26:

}

6:

27:

printf("tax=%.2f\n",tax);

6:

28:

return0;

-:

29:

}

-:

30:

4.

3.1.9统计等级分个数

【问题描述】

输入一个正整数n,再输入n个学生的百分制成绩(整数),计算平均分,

并统计各等级成绩的个数。

成绩等级分为五级,

分别为A(90-100)、B(80-89)、C(70-79)、

D(60-69)和E(0-59)。

【输入形式】

从键盘输入正整数n的,然后再数入n个人的成绩。

【输入输出样例1】(下划线部分表示输入)

Entern:

5

Entergrade1:

77

Entergrade2:

54

Entergrade3:

92

Entergrade4:

73

Entergrade5:

60

ThenumberofA(90~100):

ThenumberofB(80~89):

0

ThenumberofC(70~79):

2

ThenumberofD(60~69):

1

ThenumberofE(0~59):

1

【样例说明】

输入提示符后要加一个空格。

例如“Entern:

”,其中“:

”后要加一个且只能一个空格。

输出语句的“=”两边无空格。

英文字母区分大小写。

必须严格按样例输入输出。

-:

1:

#include

-:

2:

intmain(void)

2:

3:

{

-:

4:

inti,n,a,b,c,f,e,grade;

2:

5:

printf("Entern:

");

2:

6:

scanf("%d",&n);

2:

7:

grade=0;

2:

8:

a=b=c=f=e=0;

10:

9:

for(i=1;i<=n;i++){

8:

10:

printf("Entergrade%d:

",i);

8:

11:

scanf("%d",&grade);

10:

12:

if(grade<=100&&grade>=90){

2:

13:

a++;}

6:

14:

elseif(grade<=89&&grade>=80){

#####:

15:

b++;}

9:

16:

elseif(grade<=79&&grade>=70){

3:

17:

c++;}

5:

18:

elseif(grade<=69&&grade>=60){

2:

19:

f++;}

1:

20:

elseif(grade<=59){

1:

21:

e++;}

-:

22:

}

2:

23:

printf("ThenumberofA(90~100):

%d\nThenumberofB(80~89):

%d\nThenumberofC(70~79):

%d\nThenumberofD(60~69):

%d\nThenumberofE(0~59):

%d\n",a,b,c,f,e);

2:

24:

return0;

-:

25:

}

1.

4.1.5编程题《求一批整数的最小值》

【问题描述】

输入一个正整数n,再输入n个整数,输出最小值。

【输入形式】

从键盘输入一个正整数n和n个整数。

【输入输出样例1】(下划线部分表示输入)

Inputn:

4

Inputnumbers:

-2-1231000

min=-123

【输入输出样例2】(下划线部分表示输入)

Inputn:

4

Inputnumbers:

-9-11-8

min=-9

【输入输出样例3】(下划线部分表示输入)

Inputn:

3

Inputnumbers:

531

min=1

【样例说明】

输入提示符后要加一个空格。

其中“:

”后要加一个且只能一个空格。

输入的数据之间以一个空格相隔。

输出语句的“=”两边无空格。

英文字母区分大小写。

必须严格按样例输入输出。

-:

1:

#include

-:

2:

intmain(void)

4:

3:

{

-:

4:

inti,number,min,n;

4:

5:

printf("Inputn:

");

4:

6:

scanf("%d",&n);

4:

7:

printf("Inputnumbers:

",n);

4:

8:

scanf("%d",&number);

4:

9:

min=number;

14:

10:

for(i=1;i

10:

11:

scanf("%d",&number);

10:

12:

if(min>number)

3:

13:

min=number;

-:

14:

}

4:

15:

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

4:

16:

return0;

-:

17:

}

2.

4.1.8编程题《求a+aa+aaa+aa…a(n个a)之和》

【问题描述】

输入2个正整数a和n,求a+aa+aaa+aa…a(n个a)之和。例如,输入2和3,输出246(2+22+222)。

【输入形式】

从键盘输入正整数a和正整数n。

【输入输出样例1】(下划线部分表示输入)

Inputa,n:

85

s=98760

【样例说明】

输入提示符后要加一个空格。

其中“:

”后要加一个且只能一个空格。

输出语句的“=”两边无空格。

英文字母区分大小写。

必须严格按样例输入输出。

-:

1:

#include

-:

2:

#include

-:

3:

intmain(void)

2:

4:

{

-:

5:

inti,a,n,item,s;

-:

6:

2:

7:

printf("Inputa,n:

");

2:

8:

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

-:

9:

2:

10:

item=0;

2:

11:

s=0;

-:

12:

16:

13:

for(i=1;i<=n;i++){

14:

14:

item=item*10+a;

14:

15:

s=s+item;

-:

16:

}

2:

17:

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

-:

18:

2:

19:

return0;

-:

20:

}

-:

21:

3.

4.1.9编程题《自由落体运动——求第n次反弹落地经过的路程与第n次反弹高度》

【问题描述】

皮球从height米的高度自由落下,触地后反弹到原高度的一半,再落下,再反弹,如此反复。

皮球在第n次反弹落地时,在空中经过的路程是多少米?

第n次反弹的高度是多少?

(输出保留1位小数)

【输入形式】

从键盘输入两个正整数height和n。

【输入输出样例1】(下划线部分表示输入)

Inputheight:

10

Inputn:

2

distance=25.0

height=2.5

【输入输出样例2】(下划线部分表示输入)

Inputheight:

100

Inputn:

8

distance=299.2

height=0.4

【样例说明】

输入提示符后要加一个空格。

其中“:

”后要加一个且只能一个空格。

输出语句分两行输出,并且输出语句的“=”两边无空格。

英文字母区分大小写。

必须严格按样例输入输出。

-:

1:

#include

-:

2:

intmain(void)

2:

3:

{

-:

4:

inti,n

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

当前位置:首页 > 小学教育 > 语文

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

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