黑马程序员技术交流社区

标题: C语言中的经典算法小程序 [打印本页]

作者: 小白一号    时间: 2015-3-3 19:32
标题: C语言中的经典算法小程序
解决一个问题需要算法的支持,今后当遇到类似的问题就可以利用这些小程序的算法思想解决了。
互换两个数字
# include <stdio.h>
void swap_3(int * p, int * q) //形参名字是p和q,接收实参数据的是p和q,而不是*p和*q
{
        int t;
        t = *p; *p = *q; *q = t;
}

int main(void)
{
        int a = 3;
        int b = 5;
        swap_3(&a, &b);
        printf("a = %d, b = %d\n", a, b);
        return 0;
}
有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?
#include"stdio.h"
#include"conio.h"
main()
{
        inti,j,k;
        printf("\n");
        for(i=1;i<5;i++) /*以下为三重循环*/
                for(j=1;j<5;j++)
                        for (k=1;k<5;k++)
                        {
                        if (i!=k&&i!=j&&j!=k) /*确保i、j、k三位互不相同*/
                        printf("%d,%d,%d\n",i,j,k);
                        }
                        getch();
}


求1到n之间奇数的平均值
# include <stdio.h>

int main(void)
{
        int i;
        int sum = 0;
        int cnt = 0;
        float avg;        
        for (i=1; i<n+1; ++i)
        {
                if (i%2 == 1)
                {
                        sum += i;
                        ++cnt;
                }
        }
        avg = 1.0*sum / cnt;  //1.0默认是double类型

        printf("sum = %d\n", sum);
        printf("cnt = %d\n", cnt);
        printf("avg = %f\n", avg);
       
        return 0;
}

作者: 小白一号    时间: 2015-3-3 19:33
文件在此

c语言经典算法小程序.pdf

174.87 KB, 下载次数: 88


作者: 血玉漫天    时间: 2015-3-4 03:06
谢谢楼主分享
作者: tripleCC    时间: 2015-3-4 07:28
多谢分享
作者: 韩胜辉    时间: 2015-3-4 07:34
第一个程序貌似有点小问题
作者: bluedevils    时间: 2015-3-4 08:19
多谢分享
作者: 不爱不诺    时间: 2015-3-4 09:06
谢谢分享
作者: 枫宇翔    时间: 2015-3-4 10:28
虽然很简单,还是喜欢楼主的热心,黑马论坛就需要你这样的人
作者: 小白一号    时间: 2015-3-4 11:31
韩胜辉 发表于 2015-3-4 07:34
第一个程序貌似有点小问题

没问题啊,指针型变量的函数调用。可以啊。
作者: ocean45    时间: 2015-3-4 21:55
谢谢分享




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2