浙大版《C语言程序设计(第3版)》题目集

习题5-6 使用函数输出水仙花数

水仙花数是指一个N位正整数(N≥3),它的每个位上的数字的N次幂之和等于它本身。例如:153=13+53+33。 本题要求编写两个函数,一个判断给定整数是否水仙花数,另一个按从小到大的顺序打印出给定区间(m,n)内所有的水仙花数。

函数接口定义:

int narcissistic( int number );

void PrintN( int m, int n );

函数narcissistic判断number是否为水仙花数,是则返回1,否则返回0。

函数PrintN则打印开区间(m, n)内所有的水仙花数,每个数字占一行。题目保证100≤mn≤10000。

裁判测试程序样例:

#include <stdio.h>

int narcissistic( int number );

void PrintN( int m, int n );

int main() {

int m, n;

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

if ( narcissistic(m) ) printf("%d is a narcissistic number\n", m);

PrintN(m, n);

if ( narcissistic(n) ) printf("%d is a narcissistic number\n", n);

return 0;

}

/* 你的代码将被嵌在这里 */

输入样例:

153 400

输出样例:

153 is a narcissistic number
370
371

#include <stdio.h>
#include <stdlib.h>

/* run this program using the console pauser or add your own getch, system("pause") or input loop */

int narcissistic(int number);
void PrintN(int m,int n);

int main(int argc, char *argv[]) {
    int m,n;
    scanf("%d %d",&m,&n);
    if(narcissistic(m)) printf("%d is a narcissistic number\n", m);
    PrintN(m, n);
    if(narcissistic(n)) printf("%d is a narcissistic number\n", n);
    return 0;
}
int narcissistic(int number){
    int sum=0,number1,count=0,a;
    number1=number;
    while(number1>0){
        count++;
        number1=number1/10;
    }
    number1=number;
    int i;
    while(number1>0){
        a=number1%10;
        int c=1;
        for(i=0;i<count;i++){
            c=c*a;
        }
        sum=sum+c;
        number1=number1/10;
    }
    if(sum==number){
        return 1;
    }
    else{
        return 0;
    }
}

void PrintN(int m,int n){
    int i;
    for(i=m+1;i<n;i++){
        if(narcissistic(i)==1){
            printf("%d\n",i);
        }
    }
}

  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 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
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值