第一个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;
}

运行效果:

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

原文地址:https://www.cnblogs.com/hellocheng/p/7350153.html