C语言之基本算法

C语言之基本算法,第1张

1void是无返回值,return 0;是返回值为0,也就是无返回值。用的return的时候是因为要根据它的返回值继续主函数的一些判断等等。

2函数中传递过去的是什么,你就看函数里的形参定义的是什么类型,定义了整形传过去的就是一个整形值,定义的是指针传过去的就是指针所指向的地址。

3函数执行到return的时候程序就会结束,return 1;就是返回真。0就是假。所以执行了return 1;就不会执行return 0;了。

4主函数里定义n传到子函数处理之后主函数的n是不变的。如果将n的地址传过去,主函数的n就变了。

5double是双精度浮点型,float是单精度。假如函数的类型和变量的类型不一样则以函数的类型为准。不是什么隐士转换。

#include <stdioh>

 

int change(int amount, int index, int const coins[]) {

    if(amount == 0) return 1;

    if(index <= 0) return 0;

    for(int i = amount / coins[index - 1]; i >= 0; --i) {

        if(change(amount - i  coins[index - 1], index - 1, coins)) {

            if(i)

                printf(" %d%d", i, coins[index - 1]);

            return 1;

        }

    }

    return 0;

}

 

int main()

{

    int coins[] = { 20, 50};

    int const size = sizeof(coins)/ sizeof(int);

    int amount;

    for(int i = 0 ; i < size; ++i) {

        for(int j = i + 1 ; j < size; ++j) {

            if(coins[i] > coins[j]) {

                int temporary = coins[i];

                coins[i] = coins[j];

                coins[j] = temporary;

            }

        }

    }

    if(coins[0] <= 0) {

        printf("数据有误,零钱必须大于0\n");

        return -1;

    }

    printf("请输入要兑换的货币金额: ");

    scanf("%d", &amount);

    if(change(amount, size, coins)) 

        printf("\n兑换成功\n");

    else printf("\n兑换失败\n");

    return 0;

}

#include

int

main(void)

{

int

i,a[3];

printf("enter

3

numbers:");//输入3个书

for(i=0;i

{

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

if(a[i]>a[0])

a[i]=a[0]+a[i]-(a[0]=a[i]);//把最大的放在a〔0〕,就只要比较一次就行了。

}

if(a[1]

printf("the

number

from

max

to

low:");

for(i=0;i

printf("%d\t",a[i]);

printf("\n");

return

0;

}

算法(Algorithm)是指完成一个任务所需要的具体步骤和方法。也就是说给定初始状态或输入数据,能够得出所要求或期望的终止状态或输出数据。

算法常常含有重复的步骤和一些比较或逻辑判断。不同的算法可能用不同的时间、空间或效率来完成同样的任务。一个算法的优劣可以用空间复杂度与时间复杂度来衡量。

笔者学过数据结构就会对算法更加了解。

C语言程序设计,输入一个四位正整数,将它们倒排输出的算法如下:

#include

#include

int main()

{

int oldnum;

int newnum=0;

int temp;

printf("please input number\n");

scanf("%d",&oldnum);

printf("the old number is %d\n",oldnum);

while (oldnum !=0)

{

newnum = newnum10+oldnum%10;

oldnum = oldnum/10;

}

printf("the change number is %d",newnum);

getch();

return 0;

};

以上就是关于C语言之基本算法全部的内容,包括:C语言之基本算法、设计算法,并用c语言实现。、用C语言设计个算法,比较三个数的算法从大到小输出等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/9517263.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-29
下一篇2023-04-29

发表评论

登录后才能评论

评论列表(0条)

    保存