2017.11.18 C语言的算法分析题目

本文介绍了一个算法实验的设计与实现过程,包括实验题目的选择、输入输出设计、分治法算法构思、存储结构选取等内容,并提供了具体的编程示例,如数字求和、勾股数查找等,还探讨了比赛配对问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

算法分析

1. 选定实验题目,仔细阅读实验要求,设计好输入输出,按照分治法的思想构思算法,选取合适的存储结构实现应用的操作。

2. 设计的结果应在Visual C++ 实验环境下实现并进行调试。(也可使用JAVA编程)

#include<stdio.h>
int main()
{
    int a;
    int b;
    int n;
    int sum=0;
    printf("请输入一个数a(0~9):\n");
    scanf("%d",&a);
    b=a;
    if(a>9){
        printf("输入有误!");
    }
    else{
    printf("请输入次数n:\n");
    scanf("%d",&n);
    if(a>0&&a<=9){  
        for(int i=1;i<=n;){ 
            sum=sum+b;
            i++;
            printf("%d",sum); 
            }
        }
    }
        //printf("sum=a+aa+aaa...=%d\n",sum);
        return 0;
}

3. 实验要有详细的测试记录,包括各种可能的测试数据。

实验内容 由0到4五个数字,组成5位数,每个数字用一次,但十位和百位不能为3(当然万位不能为0),输出所有可能的五位数。
编程求和:s=a+aa+aaa+aaaa+ „„+aaaa„aaa(n个),其中a为1~9中的一个数字。
提示:若第一项为a , 以后每一项由前一项乘以10加上a递推得到,然后求和。 编写程序求500 以内的勾股弦数,即满足 c2=b2+a2的3个数,要求b>a。将所有符合要求的组合存入文本文件中,每个组合占一行。
4. 有两队选手每队5人进行一对一的比赛,甲队为A、B、C、D、E,乙队为J、K、L、M、N,经过抽签决定比赛对手名单。规定A不和J比赛, M不和D及E比赛。列出所有可能的比赛名单。 提示:先固定甲队,A在0号位,B在1号位,依次排列,最后E在4号位;然后乙队排对应的对手,用循环变量j、k、l、m、n分别对应0号位的选择、1号位的选择、依次类推, 直到到4号位的选择,每一层循环应剔除上一轮已选过的选手,和指定不与比赛的对手。用变量i统计不同情况数。

转载于:https://www.cnblogs.com/qichunlin/p/7858059.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值