• 第一个c语言小程序。


    本来是在网上百度怎么实现运行程序变颜色,然后一位大佬给了一段他写的程序代码,我敲了敲,发现挺容易理解的,就写为博客记录一下吧。

    改天用文件指针实现心理测试,而不是用数组存,老师说用数组显得不专业。。。。。但是真的很方便啊!

    #include<stdio.h>
    #include<time.h>
    #include<stdlib.h>
    #define N 10
    #define M 2.5//控制记忆幻灯片的闪动时间:单位/s 
    
    int menu1()//自定义主菜单函数 
    {
        int n;
        printf("
    				测试主题
    
    
    ");
        printf("			【注:本测试纯属娱乐】
    ");
        printf("
    
    				主菜单
    
    ");
        printf("				1.记忆测试
    ");
        printf("				2.心理测试
    ");
        printf("				0.退出测试
    ");
        printf("
    
    		请选择:_"); 
        scanf("%d",&n);
        return n;
    }
    
    int da()
    {
        int m;
        printf("	0:没有,1:偶尔有,2:有时有,3:经常有,4:总是有	请选择:_");
        scanf("%d",&m);
        if( m==1||m==0||m==2||m==3||m==4)
            return m;
        else
        {
            printf("
    	您的输入有误,请重新输入
    ");
            da(); 
        } 
    }
    
    void jycs()
    {
        int k,a[10],b[10],s=0,n;
        srand(time(NULL));
        printf("
    
    
    				子菜单<记忆测试>
    
    ");
        printf("				1.开始测试
    ");
        printf("				0.回主菜单
    ");
        printf("
    
    		请选择:_");
        scanf("%d",&n);
        while( n> 1)
        {
            printf("
    	您的输入有误,请重新输入");
            scanf("%d",&n);
        }
        system("cls");
        while(n!=0)
        {
            for(k = 0;k < 10; k ++)
                a[k] = rand()%10;
            printf("
    			【请牢记您看到颜色的顺序】
    
    ");
            printf("
    			【一共有十个颜色变化】
    
    ");
            long time;
            for( k = 0; k <10; k ++)
            {
                switch (a[k])
                {
                    case 0:system("color 90");break;
                    case 1:system("color f0");break;
                    case 2:system("color c0");break;
                    case 3:system("color d0");break;
                    case 4:system("color 80");break;
                    case 5:system("color e0");break;
                    case 6:system("color 10");break;
                    case 7:system("color 20");break;
                    case 8:system("color 30");break;
                    case 9:system("color 40");break;
                }
                for(time = 0; time <M*33e+7;time++);
                system("color b0");
                for(time = 0; time < 0.01*33e+7;time++);
            }
            system("cls");
            printf("0:淡蓝色,1:白色,2:淡红色,3:淡紫色,4:灰色,5:黄色,6:蓝色,7:绿色,8:淡绿色,9:红色
    ");
            for( k = 0; k < 10; k ++)
                scanf("%d",&b[k]);
            printf("
    【测试结果】");
            for( k = 0; k < 10; k ++)
            {
                if(a[k] == b[k])
                    s = s+10;
            }
            if( s < 40)
                printf("
    	亲!你的记忆力相当差哦!
    
    
    
    "); 
            if( s >= 40&&s < 80)
                printf("
    	恭喜你!你的记忆力正常哦!
    
    
    
    ");
            if( s >= 80)
                printf("
    	恭喜你!你的记忆力已经超于常人了!
    
    
    
    ");
            printf("				1.重新测试
    ");
            printf("				0.回主菜单
    ");
            printf("
    
    		请选择:_");
            scanf("%d",&n);
            system("cls");
         }
    }
    
    
    void xlcs()//自定义心理测试函数 
    {
        int a[20],i,n,s= 0;
        printf("
    
    
    				子菜单<心理测试>
    
    ");
        printf("				1.开始测试
    ");
        printf("				0.回主菜单
    ");
        printf("
    
    		请选择:_");
        scanf("%d",&n);
        while( n > 1)
        {
            printf("
    	您的输入有误,请重新输入"); 
            scanf("%d",&n);
        }
        system("cls");
        while( n != 0)
        {
            printf("(1).我真希望自己哪那天突然死去。
    ");
            a[0] = da();
            printf("(2).小事我也感到非常着急。
    ");
            a[1] = da();
            printf("(3).遇到一点小事我就感到非常烦恼。
    ");
            a[2] = da();
            printf("(4).我看到人活着没什么意义。
    ");
            a[3] = da();
            printf("(5).我感到心慌。
    ");
            a[4] = da();
            printf("(6).我对异性毫无兴趣。
    ");
            a[5] = da();
            printf("(7).我觉得太笨,样样不如别人。
    ");
            a[6] = da();
            printf("(8).我感到生活中自己是个弱者。
    ");
            a[7] = da();
            printf("(9).我变得做什么事都拿不定主意。
    ");
            a[8] = da();
            printf("(10).我想自己死去。
    ");
            a[9] = da();
            printf("(11).我全身没有一点力气。
    ");
            a[10] = da();
            printf("(12).我讲话的声音变得无法有力,闲话少多了。
    ");
            a[11] = da();
            printf("(13).我晚上的睡眠时间总的说比往常少多了。
    ");
            a[12] = da();
            printf("(14).我什么事情都不想干。
    ");
            a[13] = da();
            printf("(15).我感到不高兴,不愉快,不痛快。
    ");
            a[14] = da();
            printf("(16).我感到心里难受或心里不舒服。
    ");
            a[15] = da();
            printf("(17).我对周围的一切都感到没意思。
    ");
            a[16] = da();
            printf("(18).我感到紧张不安。
    ");
            a[17] = da();
            printf("(19).我不想吃东西。
    ");
            a[18] = da();
            printf("(20).我觉得比平时瘦多了。
    ");
            a[19] = da();
            printf("
    【测试结果】");
            for( i = 0; i < 20; i ++)
                s = s+a[i];
            if( s < 16)
                printf("
    		得分:_%d亲,你心里很正常哟!
    ",s);
            if( s >= 16&&s<=35)
                printf("
    		得分:_%d亲,你心里有轻度的问题了!
    ",s);
            if( s >35&&s<=45)
                printf("
    		得分:_%d亲,你心里已经有中度的问题了!
    ",s);
            if( s > 45)
                printf("
    		得分:_%d亲,你应该去看医生了!
    ",s);
            printf("				1.重新测试
    ");
            printf("				0.回主菜单
    ");
            printf("
    
    		请选择:_");
            scanf("%d",&n);
            system("cls");
        }
    }
    
    
    void Switch (int m)//自定义主菜单的选择函数 
    {
        int n;
        switch(m)
        {
            case 1:jycs();break;
            case 2:xlcs();break;
        }
    }
    
    
    int main()
    {
        int m,i;
        system("color b0");
        while((m=menu1())!=0)
        {
            system("cls");
            Switch(m);
        }
        long time;//退出测试倒计时 
        for( i = 5; i > 0; i --)
        {
            printf("
    		%d秒后退出游戏",i);
            for( time = 0; time <= 1.2*33e+7;time++);
            system("cls");
            printf("
    				测试主题
    
    
    ");
            printf("			【注:本测试纯属娱乐】
    ");
            printf("
    
    				主菜单
    
    "); 
            printf("				1.记忆测试
    ");
            printf("				2.心理测试
    ");
            printf("				0.退出测试
    ");
            printf("
    
    		请选择:_0
    ");
        }
        return 0;
    }

    运行效果:

    这里写图片描述
    这里写图片描述
    这里写图片描述
    这里写图片描述

  • 相关阅读:
    设计模式-11-代理模式
    设计模式-10-装饰者
    设计模式-9-组合
    设计模式-8-适配器
    设计模式-7-原型模式
    设计模式-6-建造者
    设计模式-5-单例模式
    u-boot-1.1.6 设置新分区支持设备树
    u-boot-2014.10移植(8)重定位,支持NAND启动
    u-boot-2014.10移植(7)修改环境变量的存储位置
  • 原文地址:https://www.cnblogs.com/hellocheng/p/7350153.html
Copyright © 2020-2023  润新知