浙大版《C语言程序设计实验与习题指导(第3版)》题目集实验2合集

实验2-1-1 计算摄氏温度

本题要求编写程序,计算华氏温度100°F对应的摄氏温度。计算公式:C=5×(F−32)/9,式中:C表示摄氏温度,F表示华氏温度,输出数据要求为整型。

输入格式:本题目没有输入。

输出格式:按照下列格式输出

fahr = 100, celsius = 计算所得摄氏温度的整数值
#include<stdio.h>
main(){
    int C,F=100;
    C = 5*(F-32)/9;
    printf("fahr = 100, celsius = %d",C);
    return 0;
}

实验2-1-2 温度转换

本题要求编写程序,计算华氏温度150°F对应的摄氏温度。计算公式:C=5×(F−32)/9,式中:C表示摄氏温度,F表示华氏温度,输出数据要求为整型。

输入格式:本题目没有输入。

输出格式:按照下列格式输出

fahr = 150, celsius = 计算所得摄氏温度的整数值
#include<stdio.h>
int main(){
    
    int F=150,C;
    C=5*(F-32)/9;
    printf("fahr = %d, celsius = %d",F,C) ;
    return 0;
} 

实验2-1-3 计算物体自由下落的距离

一个物体从100米的高空自由落下。编写程序,求它在前3秒内下落的垂直距离。设重力加速度为10米/秒2。

输入格式:本题目没有输入。

输出格式:按照下列格式输出

height = 垂直距离值
#include<stdio.h>
int main(){
    float H;
    int g=10,t=3;
    H=(g*t*t)/2;
    printf("height = %0.2f",H) ;
    return 0;
} 

实验2-1-4 计算平均分

已知某位学生的数学、英语和计算机课程的成绩分别是87分、72分和93分,求该生3门课程的平均成绩(结果按整型输出)。

输入格式:本题无输入

输出格式:按照下列格式输出结果:

math = 87, eng = 72, comp = 93, average = 计算所得的平均成绩
#include<stdio.h>
main(){
    int math=87,eng=72,comp=93, average;
    average = (math+eng+comp)/3;
    printf("math = 87, eng = 72, comp = 93, average = %d",average);
    return 0;
} 

实验2-1-5 将x的平方赋值给y

假设x的值为3,计算x的平方并赋值给y,分别以“y = xx”和“xx = y”的形式输出xy的值。

输入格式:本题无输入

输出格式:按照下列格式输出代入x=3的结果:

y = x * x
x * x = y
#include<stdio.h>
int main(){
    int x=3,y;
    y = x*x;
    printf("%d = %d * %d\n",y,x,x);
    printf("%d * %d = %d\n",x,x,y);
    return 0;
} 

实验2-1-6 计算华氏温度

本题要求编写程序,计算摄氏温度26°C 对应的华氏温度。计算公式:F=9×C/5+32,式中:C表示摄氏温度,F表示华氏温度,输出数据要求为整型。

输入格式:本题目没有输入。

输出格式:按照下列格式输出

celsius = 26, fahr = 对应的华氏温度整数值
#include<stdio.h>
int main(){
    int F,C=26;
    F=9*C/5+32;
    printf("celsius = %d, fahr = %d",C,F);
    return 0;
} 

实验2-1-7 整数152的各位数字

本题要求编写程序,输出整数152的个位数字、十位数字和百位数字的值。

输入格式:本题无输入。

输出格式:按照以下格式输出:

152 = 个位数字 + 十位数字*10 + 百位数字*100
#include<stdio.h>
int main(){
    int d=152,a,b,c;
    a = d%10;
    b = d/10%10;
    c = d/100;
    printf("152 = %d + %d*10 + %d*100",a,b,c);
    return 0;
} 

实验2-2-1 计算分段函数[1

本题目要求计算下列分段函数f(x)的值:

输入格式:输入在一行中给出实数x。

输出格式:在一行中按“f(x) = result”的格式输出,其中x与result都保留一位小数。

输入样例1:

10

输出样例1:

f(10.0) = 0.1

输入样例2:

0

输出样例2:

f(0.0) = 0.0
#include<stdio.h>
main(){
    float x,y;
    scanf("%f",&x);
    if (x!=0){
        y = 1/x;
    } 
    else y = x;
    printf("f(%.1f) = %.1f\n",x,y);
    return 0;
} 

实验2-2-2 计算摄氏温度

给定一个华氏温度F,本题要求编写程序,计算对应的摄氏温度C。计算公式:C=5×(F−32)/9。题目保证输入与输出均在整型范围内。

输入格式:输入在一行中给出一个华氏温度。

输出格式:在一行中按照格式“Celsius = C”输出对应的摄氏温度C的整数值。

输入样例:

150

输出样例:

Celsius = 65
#include<stdio.h>
int main(){
    int C,F;
    scanf("%i",&F);
    C = 5*(F-32)/9;
    printf("Celsius = %i",C);
    return 0;
} 

实验2-2-3 计算存款利息

本题目要求计算存款利息,计算公式为interes**t=mon**ey×(1+rat**e)yearmon**ey,其中interes**t为存款到期时的利息(税前),mon**ey是存款金额,year是存期,rat**e是年利率。

输入格式:输入在一行中顺序给出三个正实数mon**eyyearrat**e,以空格分隔。

输出格式:在一行中按“interest = 利息”的格式输出,其中利息保留两位小数。

输入样例:

1000 3 0.025

输出样例:

interest = 76.89
#include<stdio.h>
#include<math.h>
main (){
    double interes,money,year,rate;
    scanf("%lf %lf %lf",&money,&year,&rate);
    interes = money* pow(1+rate,year)-money;
    printf("interest = %.2f\n",interes);
    return 0;
}

实验2-3-4 求简单交错序列前N项和

本题要求编写程序,计算序列 1 - 1/4 + 1/7 - 1/10 + ... 的前N项之和。

输入格式:输入在一行中给出一个正整数N。

输出格式:在一行中按照“sum = S”的格式输出部分和的值S,精确到小数点后三位。题目保证计算结果不超过双精度范围。

输入样例:

10

输出样例:

sum = 0.819
#include<stdio.h>
int main(){
    int n,x=1,j=1;
    double sum =0;
    scanf("%d",&n);
    for(int i=0;i<n;i++){
        sum += (1.0/j)*x;
        j=j+3;
        x=-1*x;
    } 
    printf("sum = %.3f",sum);
    return 0;
} 

实验2-3-5 输出华氏-摄氏温度转换表

输入2个正整数lowerupperlowerupper≤100),请输出一张取值范围为[lowerupper]、且每次增加2华氏度的华氏-摄氏温度转换表。

温度转换的计算公式:C=5×(F−32)/9,其中:C表示摄氏温度,F表示华氏温度。

输入格式:

在一行中输入2个整数,分别表示lowerupper的值,中间用空格分开。

输出格式:

第一行输出:"fahr celsius"

接着每行输出一个华氏温度fahr(整型)与一个摄氏温度celsius(占据6个字符宽度,靠右对齐,保留1位小数)。

若输入的范围不合法,则输出"Invalid."。

输入样例1:

32 35

输出样例1:

fahr celsius
32   0.0
34   1.1

输入样例2:

40 30

输出样例2:

Invalid.
#include<stdio.h>
int main(){
    int lower,upper,f;
    double c;
    scanf("%d %d",&lower,&upper);
    if(lower<=upper&&upper<=100){
        printf ("fahr celsius\n");
    for(f=lower;f<=upper;f=f+2){
        c = 5.0*(f-32)/9.0;
        printf ("%d%6.1f\n",f,c);
    }
}else{
        printf("Invalid.");
    }
    return 0;
} 

实验2-3-6 求交错序列前N项和

本题要求编写程序,计算交错序列 1-2/3+3/5-4/7+5/9-6/11+... 的前N项之和。

输入格式:输入在一行中给出一个正整数N。

输出格式:在一行中输出部分和的值,结果保留三位小数。

输入样例:

5

输出样例:

0.917
#include<stdio.h>
int main(){
    int N,x=1,j=1;
    double sum=0;
    scanf("%d",&N);
    for(int i=1;i<=N;i++){
        sum += x*(i*1.0/j);
        x*=-1;
        j = j+2;
    }
    printf("%.3f",sum);
    return 0;
} 

实验2-3-7 求平方与倒数序列的部分和

本题要求对两个正整数mnmn)编写程序,计算序列和m2+1/m+(m+1)2+1/(m+1)+⋯+n2+1/n

输入格式:

输入在一行中给出两个正整数mnmn),其间以空格分开。

输出格式:

在一行中按照“sum = S”的格式输出部分和的值S,精确到小数点后六位。题目保证计算结果不超过双精度范围。

输入样例:

5 10

输出样例:

sum = 355.845635
#include<stdio.h>
#include<math.h>
int main(){
    int m,n;
    double sum=0;
    scanf("%d %d",&m,&n);
    if(m<=n){
        for(int i=m;i<=n;i++){
            sum+=pow(i,2)+1.0/i;
        }   
    } 
        printf("sum = %.6f",sum);
    return 0;
} 

实验2-4-2 生成3的乘方表

输入一个非负整数n,生成一张3的乘方表,输出30~3n的值。可调用幂函数计算3的乘方。

输入格式:

输入在一行中给出一个非负整数n

输出格式:

按照幂的递增顺序输出n+1行,每行格式为“pow(3,i) = 3的i次幂的值”。题目保证输出数据不超过长整型整数的范围。

输入样例:

3

输出样例:

pow(3,0) = 1
pow(3,1) = 3
pow(3,2) = 9
pow(3,3) = 27
#include<stdio.h>
#include<math.h>
int main() {
    int m,n;
    scanf("%d",&n);
    for(int i=0; i<=n; i++) {
        m=pow(n,i);
    printf("pow(%d,%d) = %d\n",n,i,m);
    }
    return 0;
}

实验2-4-3 求平方根序列前N项和

本题要求编写程序,计算平方根序列1+2+3+⋯的前N项之和。可包含头文件math.h,并调用sqrt函数求平方根。

输入格式:输入在一行中给出一个正整数N。

输出格式:在一行中按照“sum = S”的格式输出部分和的值S,精确到小数点后两位。题目保证计算结果不超过双精度范围。

输入样例:

10

输出样例:

sum = 22.47
#include<stdio.h>
#include<math.h>
int main() {
    int n;
    double sum=0;
    scanf("%d",&n);
    for(int i=0; i<=n; i++) {
        sum+=sqrt(i);
    }
    printf("sum = %.2f",sum);
    return 0;
}

实验2-4-4 求阶乘序列前N项和

本题要求编写程序,计算序列 1!+2!+3!+⋯ 的前N项之和。

输入格式:输入在一行中给出一个不超过12的正整数N。

输出格式:在一行中输出整数结果。

输入样例:

5

输出样例:

153
//分析:求累加需要使用循环函数,求阶乘需要自定义一个函数用于求阶乘
#include<stdio.h>
int funcation(int a);
int main() {
    int n,sum=0;
    scanf("%d",&n);
    for(int i=1;i<=n;i++){
        sum += funcation(i);
    }
    printf("%d",sum);
    return 0;
}
​
int funcation(int a){
    int sum=1;
    for(int i=1;i<=a;i++){
        sum *=i;
    }
    return sum;
}

实验2-4-6 求幂之和

本题要求编写程序,计算sum=21+22+23+⋯+2n。可以调用pow函数求幂。

输入格式:输入在一行中给出正整数n(≤10)。

输出格式:按照格式“result = 计算结果”输出。

输入样例:

5

输出样例:

result = 62
#include<stdio.h>
#include<math.h> 
int main() {
    int n,sum=0;
    scanf("%d",&n);
    for(int i=1;i<=n;i++){
        sum += pow(2,i);
    }
    printf("result = %d",sum);
    return 0;
}

实验2-4-7 求组合数

本题要求编写程序,根据公式Cnm=n!/m!(nm)!算出从n个不同元素中取出m个元素(mn)的组合数。

建议定义和调用函数fact(n)计算n!,其中n的类型是int,函数类型是double

输入格式:输入在一行中给出两个正整数mnmn),以空格分隔。

输出格式:按照格式“result = 组合数计算结果”输出。题目保证结果在double类型范围内。

输入样例:

2 7

输出样例:

result = 21
//分析:调用自定义函数完成阶乘
#include<stdio.h>
double fact(int n);
int main(){
    double result;
    int m,n;
    scanf("%d %d",&m,&n);
    result = fact(n)/(fact(m)*fact(n-m));
    printf("result = %.f",result);
    return 0;
} 
double fact(int n){
    double sum=1;
    for(int i=2;i<=n;i++){
        sum*=i;
    }
    return sum;
}
  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
### 回答1: 浙大C语言程序设计实验习题指导(第3)》题目是一本针对C语言学习者的实验习题指导书籍。该书包含了大量的实验习题,涵盖了C语言的基础知识和应用技巧。通过完成这些实验习题,读者可以逐步掌握C语言的编程思想和技能,提高自己的编程水平。该书内容丰富、难度适中,适合初学者和进阶者使用。 ### 回答2: 浙大C语言程序设计实验习题指导(第3)》题目是一本较为优秀的学习C语言编程的书籍,其编写目的主要是为了帮助学习者在掌握C语言编程语言的基础知识之后,通过各种习题的练习和实验的操作,更好地学习和掌握C语言编程的能力,从而提高自己的编程水平。 本书分为两部分,第一部分是实验指导,旨在通过实际操作来帮助学习者更好地理解和掌握C语言编程的基础知识,其中包括C语言程序设计实验C语言程序设计应用实验C语言程序设计综合应用实验三个部分,每个实验都有配套的实验指导实验报告模板,学生可以根据实验指导完成实验,通过实验来检验自己对C语言编程的理解和掌握程度。 第二部分是习题指导,主要是通过各种习题来达到帮助学习者进一步巩固和提高C语言编程能力的目的。习题指导包括基础知识习题程序设计习题和综合应用习题三个部分,对于每个习题都有详细的讲解和参考答案,学生可以通过做习题来检验并提高自己的C语言编程能力。 总体来说,浙大C语言程序设计实验习题指导(第3)》题目是一本非常优秀的教材,通过实验习题的形式来帮助学习者更好地掌握C语言编程的基础知识和编程技能,对于提升学生C语言编程能力和实际应用能力有非常积极的作用。同时,本书编写非常系统、内容丰富、语言简明易懂,对于初学者和进阶者都有着很好的指导和帮助作用。虽然有英文的书籍,但此书的中文也是一本学习C语言编程非常好的教材,值得推荐。 ### 回答3: 《C语言程序设计实验习题指导(第3)》是浙江大学计算机科学与技术学院编写的一本C语言教材,也是浙江大学计算机学院C语言课程的教材之一。本书主要分为两部分,第一部分是实验指导,第二部分是习题。在实验指导部分,本书从C语言的基础语法入手,通过不断地练习和实践,让读者逐步掌握C语言的编程技巧和方法。在习题中,本书涵盖了各个难度层次的练习题,从基本的语法练习到复杂的算法实现、图形绘制等练习都有。本书的练习题设计严密,题目设计科学合理,不仅可以让读者巩固和提高C语言编程能力,还能引导读者思考解决实际问题的程序设计方法。 《C语言程序设计实验习题指导(第3)》的实验指导部分共有12个实验,每个实验包含实验目的、实验原理、实验步骤和实验报告等内容。在实验步骤中,每步都有详细的操作指导和说明,能够帮助读者轻松地进行实验。在实验报告中,本书也给出了详细的要求和格式说明,让读者写出规范、清晰的实验报告。 本书的习题部分分为基础篇、提高篇和应用篇三个部分,每个部分都有若干章节,涵盖了C语言的各个方面。每个章节都有若干个练习题目,其中不乏难度适中、有一定难度的习题。本书的习题循序渐进,能够帮助读者逐步提高C语言编程水平。 总之,《C语言程序设计实验习题指导(第3)》不仅是一本优秀的C语言教材,更是一本优秀的C语言习题。无论是C语言初学者还是有一定编程基础的读者,都可以从中获得巨大的收获。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

烟雨孤舟

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值