liu2311063379

C程序设计实验报告

实验项目:5.3.1-2、5.3.2-2、5.3.4、5.3.5-1、5.3.5-2、5.3.5-3、九九乘法表、奥数趣解

姓名:刘裕汕   实验地点:家里   实验时间:2020年4月9日

一、实验目的与要求

1、熟练地掌握while,do_while及for语句实现循环的方法。
2、了解3种循环语句的区别和转换、各自的适应性、循环嵌套的使用。
3、掌握如何在循环语句种使用break,continue语句,改变程序流程。
4、掌握在程序设计种用循环的方法实现各种算法。

二、实验内容

1、实验练习:5.3.1-2

1问题的简单描述:编写程序,求数列1,-3!,5!,-7!,..,(-1)^(n-1)×(2n-1)!前n项的和。n的值由键盘输人。

2实验代码:

#include<stdio.h>
void main()
{
    int n,i,j,sign=1;
    float fac,sum;
    printf("please input value of n:");
    scanf("%d",&n);
    sum=0.0;
    for(i=1;i<=2*n-1;i=i+2)
    {
        fac=1.0;
        {for(j=1;j<=i;j++)
        fac=j*fac;}
        sum=sum+fac*sign;
        sign=-sign;
    }
    printf("sum=%.0f\n",sum);
}

 

3问题分析:本题运用了累乘的思想,即fac=fac*j,从而达到阶乘的目的

2、实验练习:5.3.2-2

1问题的简单描述:求水仙花数。

2实验代码:

#include<stdio.h>
void main()
{
    int x,y,z;int k=100;
    while(k<1000)
    {
        x=k/100;
        y=(k/10)%10;
        z=k%10;
        if(k==x*x*x+y*y*y+z*z*z)
        printf("%d\n",k);
        k++;
    }
 } 

 

3问题分析:本题不需要输入值,先将三位数拆为三个数,计算后进行判断,正确则输出。

3、实验练习:5.3.4

1问题的简单描述:输入四个字符型数字,并把其转换为十进制整数后显示出来。

2实验代码:

#include<stdio.h>
void main()
{
    char c;
    int k,data;
    data=0;
    for(k=0;k<4;k++)
    {
        while(k<4)
        {
            c=getchar();
            if(c>=\'0\'&&c<=\'9\')
            break;
        }
        if(k==0)data+=(c-\'0\')*1000;
        if(k==1)data+=(c-\'0\')*100;
        if(k==2)data+=(c-\'0\')*10;
        if(k==3)data+=(c-\'0\');
    }
    printf("Data=%d",data);
}

3问题分析:本题是将四个数字合成为一个整数,应利用位数的关系,再乘以十的次方,最后相加即可。

4、实验练习:5.3.5-1

1问题的简单描述:有100匹马,要驮100担货物。其中,1匹大马可以驮3担货物,1匹中可以驮两担货物,两匹小马可以驮1担货物,求所需要的大马、中马和小马可以有多少种组合。

2实验代码:

#include<stdio.h>
void main()
{
    int m,n,k;
    int sum=0;
    printf("各种驮法如下:\n");
    for(m=1;m<=100;m++)
    {
        for(n=1;n<=100-m;n++)
        {
            k=100-n-m;
            if((k%2==0)&&((3*m+2*n+k/2)==100))
            {
            printf("大马%3d匹;中马%3d匹;小马%3d匹.\n",m,n,k);
            sum++;
            }
        }
    }
    printf("共有%d种驮法.\n",sum);
}

3问题分析:if语句判断中要注意括号的配对问题,算式中是否省略*号也是关键。

5、实验练习:5.3.5-2

1问题的简单描述:

2实验代码:有一正整数等差数列,已知该数列前四项之和等于26,前四项之积等于880,求该等差数列前六项的值及该数列前六项的和。

#include<stdio.h>
void main()
{
    int a,b,c,d,i,sum=0;
    for(a=1;a<=26;a++)
        for(d=1;d<=26;d++)
        {
            b=4*a+6*d;
            c=a*(a+d)*(a+d+d)*(a+d+d+d);
            if((b==26)&&(c==880))
            {
                printf("数列的初值为a=%d,差值为d=%d",a,d);
                printf("\n数列的前6项的值为:");
                for(i=0;i<6;i++)
                {
                    printf(" %d",a+i*d); 
                    sum=sum+(a+i*d);
                }
                printf("\n ");
            }
        }
    printf("\n数列前6项的和:%d\n",sum);
}

3问题分析:代码输入顺序不能乱,越是整洁的代码越容易发现错误的地方

6、实验练习:5.3.5-3

1问题的简单描述:有30个学生一起买小吃,共花费50元,其中,每个大学生花3元,每个中学生花2元,每个小学生花1元,求大中小学生的人数分配共有多少种不同的组合?

2实验代码:

#include<stdio.h>
void main()
{
    int x,y,z,sum;
    sum=0;
    for(x=1;x<30;x++)
    {
        for(y=1;y<30;y++)
        {
            z=30-x-y;
            if(3*x+2*y+z==50)
            {
                printf("大学生%3d\t中学生%3d\t小学生%3d\n",x,y,z);
                sum=sum+1; 
            }
        }
    }
    printf("共有%d种组合。\n",sum); 
 } 

3问题分析    题中有三个变量,可将其中两个量变为因变量,剩余一个为自变量,再利用for循环进行计算并显示结果。

三、项目实训:九九乘法表/帮帮小朋友(奥数趣解)

(一)九九乘法表

1、设计思路

使用for循环来控制行列,在循环语句中插入计算公式即可

2、流程图

3、设计过程中遇到的问题及改进的方法

每一行的列数不同,所以在控制列的循环中要将循环条件改为就j<=i.

4、代码

#include<stdio.h>
main()
{
    int i,j,k;
    printf("    九九乘法表    \n"); 
    for(i=1;i<10;i++)
    {
        for(j=1;j<=i;j++)
        {
            k=i*i;
            printf("%d*%d=%d ",i,i,k);
        }
        printf("\n");
    }
}

 

(二)帮帮小朋友(奥数趣解)

1、设计思路

原是想利用循环对计算进行分步运算,但是计算顺序无法改变,而且发现代码语句过多,近上千条;后改为先自主运算,再用switch结构输出结果。

2、流程图

3、设计过程中遇到的问题及改进的方法

无法对符号进行正确选择,计算顺序也难以改变

4、代码

现代码(简易版)

#include<stdio.h>
main()
{
    int n;
    printf("(0-10)\n3 3 3 3 3=");
    scanf("%d",&n);
    switch(n)
    {
        case 0:printf("3*3-3-3-3=0");break;
        case 1:printf("3-3/3-3/3=1");break;
        case 2:printf("(3+3)/3-3+3=2");break;
        case 3:printf("3+3+3-3-3=3");break;
        case 4:printf("3/3+3+3-3=4");break;
        case 5:printf("3/3+3/3+3=5");break;
        case 6:printf("3*3-3-3+3=6");break;
        case 7:printf("3*3-3+3/3=7");break;
        case 8:printf("3+3+3-3/3=8");break;
        case 9:printf("3+3+3+3-3=9");break;
        case 10:printf("3+3+3+3/3=10");break;
    }
    return 0;
 } 

 原代码(超长版)

#include<stdio.h>
main()
{
    int a,i,n,sum;
    char w,x,y,z;
    printf("3 3 3 3 3=");
    scanf("%d",&n);
    for(i=1;i<=256;i++)
    {
        switch(i)
        {
        case 1:a=3+3+3+3+3;w=\'+\';x=\'+\';y=\'+\';z=\'+\';break;
        case 2:a=3+3+3+3-3;w=\'+\';x=\'+\';y=\'+\';z=\'-\';break;
        case 3:a=3+3+3+3*3;w=\'+\';x=\'+\';y=\'+\';z=\'*\';break;
        case 4:a=3+3+3+3/3;w=\'+\';x=\'+\';y=\'+\';z=\'/\';break;
        
        case 5:a=3+3+3-3+3;w=\'+\';x=\'+\';y=\'-\';z=\'+\';break;
        case 6:a=3+3+3-3-3;w=\'+\';x=\'+\';y=\'-\';z=\'-\';break;
        case 7:a=3+3+3-3*3;w=\'+\';x=\'+\';y=\'-\';z=\'*\';break;
        case 8:a=3+3+3-3/3;w=\'+\';x=\'+\';y=\'-\';z=\'/\';break;
        
        case 9:a=3+3+3*3+3;w=\'+\';x=\'+\';y=\'*\';z=\'+\';break;
        case 10:a=3+3+3*3-3;w=\'+\';x=\'+\';y=\'*\';z=\'-\';break;
        case 11:a=3+3+3*3*3;w=\'+\';x=\'+\';y=\'*\';z=\'*\';break;
        case 12:a=3+3+3*3/3;w=\'+\';x=\'+\';y=\'*\';z=\'/\';break;
        
        case 13:a=3+3+3/3+3;w=\'+\';x=\'+\';y=\'/\';z=\'+\';break;
        case 14:a=3+3+3/3-3;w=\'+\';x=\'+\';y=\'/\';z=\'-\';break;
        case 15:a=3+3+3/3*3;w=\'+\';x=\'+\';y=\'/\';z=\'*\';break;
        case 16:a=3+3+3/3/3;w=\'+\';x=\'+\';y=\'/\';z=\'/\';break;
        
        case 17:a=3+3-3+3+3;w=\'+\';x=\'-\';y=\'+\';z=\'+\';break;
        case 18:a=3+3-3+3-3;w=\'+\';x=\'-\';y=\'+\';z=\'-\';break;
        case 19:a=3+3-3+3*3;w=\'+\';x=\'-\';y=\'+\';z=\'/\';break;
        case 20:a=3+3-3+3/3;w=\'+\';x=\'-\';y=\'+\';z=\'*\';break;
        
        case 21:a=3+3-3-3+3;w=\'+\';x=\'-\';y=\'-\';z=\'+\';break;
        case 22:a=3+3-3-3-3;w=\'+\';x=\'-\';y=\'-\';z=\'-\';break;
        case 23:a=3+3-3-3*3;w=\'+\';x=\'-\';y=\'-\';z=\'*\';break;
        case 24:a=3+3-3-3/3;w=\'+\';x=\'-\';y=\'-\';z=\'/\';break;
        
        case 25:a=3+3-3*3+3;w=\'+\';x=\'-\';y=\'*\';z=\'+\';break;
        case 26:a=3+3-3*3-3;w=\'+\';x=\'-\';y=\'*\';z=\'-\';break;
        case 27:a=3+3-3*3*3;w=\'+\';x=\'-\';y=\'*\';z=\'*\';break;
        case 28:a=3+3-3*3/3;w=\'+\';x=\'-\';y=\'*\';z=\'/\';break;
        
        case 29:a=3+3-3/3+3;w=\'+\';x=\'-\';y=\'/\';z=\'+\';break;
        case 30:a=3+3-3/3-3;w=\'+\';x=\'-\';y=\'/\';z=\'-\';break;
        case 31:a=3+3-3/3*3;w=\'+\';x=\'-\';y=\'/\';z=\'*\';break;
        case 32:a=3+3-3/3/3;w=\'+\';x=\'-\';y=\'/\';z=\'/\';break;
        
        case 33:a=3+3*3+3+3;w=\'+\';x=\'*\';y=\'+\';z=\'+\';break;
        case 34:a=3+3*3+3-3;w=\'+\';x=\'*\';y=\'+\';z=\'-\';break;
        case 35:a=3+3*3+3*3;w=\'+\';x=\'*\';y=\'+\';z=\'*\';break;
        case 36:a=3+3*3+3/3;w=\'+\';x=\'*\';y=\'+\';z=\'/\';break;
        
        case 37:a=3+3*3-3+3;w=\'+\';x=\'*\';y=\'-\';z=\'+\';break;
        case 38:a=3+3*3-3-3;w=\'+\';x=\'*\';y=\'-\';z=\'-\';break;
        case 39:a=3+3*3-3*3;w=\'+\';x=\'*\';y=\'-\';z=\'*\';break;
        case 40:a=3+3*3-3/3;w=\'+\';x=\'*\';y=\'-\';z=\'/\';break;
        
        case 41:a=3+3*3*3+3;w=\'+\';x=\'*\';y=\'*\';z=\'+\';break;
        case 42:a=3+3*3*3-3;w=\'+\';x=\'*\';y=\'*\';z=\'-\';break;
        case 43:a=3+3*3*3*3;w=\'+\';x=\'*\';y=\'*\';z=\'*\';break;
        case 44:a=3+3*3*3/3;w=\'+\';x=\'*\';y=\'*\';z=\'/\';break;
        
        case 45:a=3+3*3/3+3;w=\'+\';x=\'*\';y=\'/\';z=\'+\';break;
        case 46:a=3+3*3/3-3;w=\'+\';x=\'*\';y=\'/\';z=\'-\';break;
        case 47:a=3+3*3/3*3;w=\'+\';x=\'*\';y=\'/\';z=\'*\';break;
        case 48:a=3+3*3/3/3;w=\'+\';x=\'*\';y=\'/\';z=\'/\';break;
        
        case 49:a=3+3/3+3+3;w=\'+\';x=\'/\';y=\'+\';z=\'+\';break;
        case 50:a=3+3/3+3-3;w=\'+\';x=\'/\';y=\'+\';z=\'-\';break;
        case 51:a=3+3/3+3*3;w=\'+\';x=\'/\';y=\'+\';z=\'/\';break;
        case 52:a=3+3/3+3/3;w=\'+\';x=\'/\';y=\'+\';z=\'*\';break;
        
        case 53:a=3+3/3-3+3;w=\'+\';x=\'/\';y=\'-\';z=\'+\';break;
        case 54:a=3+3/3-3-3;w=\'+\';x=\'/\';y=\'-\';z=\'-\';break;
        case 55:a=3+3/3-3*3;w=\'+\';x=\'/\';y=\'-\';z=\'*\';break;
        case 56:a=3+3/3-3/3;w=\'+\';x=\'/\';y=\'-\';z=\'/\';break;
        
        case 57:a=3+3/3*3+3;w=\'+\';x=\'/\';y=\'*\';z=\'+\';break;
        case 58:a=3+3/3*3-3;w=\'+\';x=\'/\';y=\'*\';z=\'-\';break;
        case 59:a=3+3/3*3*3;w=\'+\';x=\'/\';y=\'*\';z=\'*\';break;
        case 60:a=3+3/3*3/3;w=\'+\';x=\'/\';y=\'*\';z=\'/\';break;
        
        case 61:a=3+3/3/3+3;w=\'+\';x=\'/\';y=\'/\';z=\'+\';break;
        case 62:a=3+3/3/3-3;w=\'+\';x=\'/\';y=\'/\';z=\'-\';break;
        case 63:a=3+3/3/3*3;w=\'+\';x=\'/\';y=\'/\';z=\'*\';break;
        case 64:a=3+3/3/3/3;w=\'+\';x=\'/\';y=\'/\';z=\'/\';break;
        
        case 65:a=3-3+3+3+3;w=\'-\';x=\'+\';y=\'+\';z=\'+\';break;
        case 66:a=3-3+3+3-3;w=\'-\';x=\'+\';y=\'+\';z=\'-\';break;
        case 67:a=3-3+3+3*3;w=\'-\';x=\'+\';y=\'+\';z=\'*\';break;
        case 68:a=3-3+3+3/3;w=\'-\';x=\'+\';y=\'+\';z=\'/\';break;
        
        case 69:a=3-3+3-3+3;w=\'-\';x=\'+\';y=\'-\';z=\'+\';break;
        case 70:a=3-3+3-3-3;w=\'-\';x=\'+\';y=\'-\';z=\'-\';break;
        case 71:a=3-3+3-3*3;w=\'-\';x=\'+\';y=\'-\';z=\'*\';break;
        case 72:a=3-3+3-3/3;w=\'-\';x=\'+\';y=\'-\';z=\'/\';break;
        
        case 73:a=3-3+3*3+3;w=\'-\';x=\'+\';y=\'*\';z=\'+\';break;
        case 74:a=3-3+3*3-3;w=\'-\';x=\'+\';y=\'*\';z=\'-\';break;
        case 75:a=3-3+3*3*3;w=\'-\';x=\'+\';y=\'*\';z=\'*\';break;
        case 76:a=3-3+3*3/3;w=\'-\';x=\'+\';y=\'*\';z=\'/\';break;
        
        case 77:a=3-3+3/3+3;w=\'-\';x=\'+\';y=\'/\';z=\'+\';break;
        case 78:a=3-3+3/3-3;w=\'-\';x=\'+\';y=\'/\';z=\'-\';break;
        case 79:a=3-3+3/3*3;w=\'-\';x=\'+\';y=\'/\';z=\'*\';break;
        case 80:a=3-3+3/3/3;w=\'-\';x=\'+\';y=\'/\';z=\'/\';break;
        
        case 81:a=3-3-3+3+3;w=\'-\';x=\'-\';y=\'+\';z=\'+\';break;
        case 82:a=3-3-3+3-3;w=\'-\';x=\'-\';y=\'+\';z=\'-\';break;
        case 83:a=3-3-3+3*3;w=\'-\';x=\'-\';y=\'+\';z=\'*\';break;
        case 84:a=3-3-3+3/3;w=\'-\';x=\'-\';y=\'+\';z=\'/\';break;
        
        case 85:a=3-3-3-3+3;w=\'-\';x=\'-\';y=\'-\';z=\'+\';break;
        case 86:a=3-3-3-3-3;w=\'-\';x=\'-\';y=\'-\';z=\'-\';break;
        case 87:a=3-3-3-3*3;w=\'-\';x=\'-\';y=\'-\';z=\'*\';break;
        case 88:a=3-3-3-3/3;w=\'-\';x=\'-\';y=\'-\';z=\'/\';break;
        
        case 89:a=3-3-3*3+3;w=\'-\';x=\'-\';y=\'*\';z=\'+\';break;
        case 90:a=3-3-3*3-3;w=\'-\';x=\'-\';y=\'*\';z=\'-\';break;
        case 91:a=3-3-3*3*3;w=\'-\';x=\'-\';y=\'*\';z=\'*\';break;
        case 92:a=3-3-3*3/3;w=\'-\';x=\'-\';y=\'*\';z=\'/\';break;
        
        case 93:a=3-3-3/3+3;w=\'-\';x=\'-\';y=\'/\';z=\'+\';break;
        case 94:a=3-3-3/3-3;w=\'-\';x=\'-\';y=\'/\';z=\'-\';break;
        case 95:a=3-3-3/3*3;w=\'-\';x=\'-\';y=\'/\';z=\'*\';break;
        case 96:a=3-3-3/3/3;w=\'-\';x=\'-\';y=\'/\';z=\'/\';break;
        
        case 97:a=3-3*3+3+3;w=\'-\';x=\'*\';y=\'+\';z=\'+\';break;
        case 98:a=3-3*3+3-3;w=\'-\';x=\'*\';y=\'+\';z=\'-\';break;
        case 99:a=3-3*3+3*3;w=\'-\';x=\'*\';y=\'+\';z=\'*\';break;
        case 100:a=3-3*3+3/3;w=\'-\';x=\'*\';y=\'+\';z=\'/\';break;
        
        case 101:a=3-3*3-3+3;w=\'-\';x=\'*\';y=\'-\';z=\'+\';break;
        case 102:a=3-3*3-3-3;w=\'-\';x=\'*\';y=\'-\';z=\'-\';break;
        case 103:a=3-3*3-3*3;w=\'-\';x=\'*\';y=\'-\';z=\'*\';break;
        case 104:a=3-3*3-3/3;w=\'-\';x=\'*\';y=\'-\';z=\'/\';break;
        
        case 105:a=3-3*3*3+3;w=\'-\';x=\'*\';y=\'*\';z=\'+\';break;
        case 106:a=3-3*3*3-3;w=\'-\';x=\'*\';y=\'*\';z=\'-\';break;
        case 107:a=3-3*3*3*3;w=\'-\';x=\'*\';y=\'*\';z=\'*\';break;
        case 108:a=3-3*3*3/3;w=\'-\';x=\'*\';y=\'*\';z=\'/\';break;
        
        case 109:a=3-3*3/3+3;w=\'-\';x=\'*\';y=\'/\';z=\'+\';break;
        case 110:a=3-3*3/3-3;w=\'-\';x=\'*\';y=\'/\';z=\'-\';break;
        case 111:a=3-3*3/3*3;w=\'-\';x=\'*\';y=\'/\';z=\'*\';break;
        case 112:a=3-3*3/3/3;w=\'-\';x=\'*\';y=\'/\';z=\'/\';break;
        
        case 113:a=3-3/3+3+3;w=\'-\';x=\'/\';y=\'+\';z=\'+\';break;
        case 114:a=3-3/3+3-3;w=\'-\';x=\'/\';y=\'+\';z=\'-\';break;
        case 115:a=3-3/3+3*3;w=\'-\';x=\'/\';y=\'+\';z=\'*\';break;
        case 116:a=3-3/3+3/3;w=\'-\';x=\'/\';y=\'+\';z=\'/\';break;
        
        case 117:a=3-3/3-3+3;w=\'-\';x=\'/\';y=\'-\';z=\'+\';break;
        case 118:a=3-3/3-3-3;w=\'-\';x=\'/\';y=\'-\';z=\'-\';break;
        case 119:a=3-3/3-3*3;w=\'-\';x=\'/\';y=\'-\';z=\'*\';break;
        case 120:a=3-3/3-3/3;w=\'-\';x=\'/\';y=\'-\';z=\'/\';break;
        
        case 121:a=3-3/3*3+3;w=\'-\';x=\'/\';y=\'*\';z=\'+\';break;
        case 122:a=3-3/3*3-3;w=\'-\';x=\'/\';y=\'*\';z=\'-\';break;
        case 123:a=3-3/3*3*3;w=\'-\';x=\'/\';y=\'*\';z=\'*\';break;
        case 124:a=3-3/3*3/3;w=\'-\';x=\'/\';y=\'*\';z=\'/\';break;
        
        case 125:a=3-3/3/3+3;w=\'-\';x=\'/\';y=\'/\';z=\'+\';break;
        case 126:a=3-3/3/3-3;w=\'-\';x=\'/\';y=\'/\';z=\'-\';break;
        case 127:a=3-3/3/3*3;w=\'-\';x=\'/\';y=\'/\';z=\'*\';break;
        case 128:a=3-3/3/3/3;w=\'-\';x=\'/\';y=\'/\';z=\'/\';break;
        
        case 129:a=3*3+3+3+3;w=\'*\';x=\'+\';y=\'+\';z=\'+\';break;
        case 130:a=3*3+3+3-3;w=\'*\';x=\'+\';y=\'+\';z=\'-\';break;
        case 131:a=3*3+3+3*3;w=\'*\';x=\'+\';y=\'+\';z=\'*\';break;
        case 132:a=3*3+3+3/3;w=\'*\';x=\'+\';y=\'+\';z=\'/\';break;
        
        case 133:a=3*3+3-3+3;w=\'*\';x=\'+\';y=\'-\';z=\'+\';break;
        case 134:a=3*3+3-3-3;w=\'*\';x=\'+\';y=\'-\';z=\'-\';break;
        case 135:a=3*3+3-3*3;w=\'*\';x=\'+\';y=\'-\';z=\'*\';break;
        case 136:a=3*3+3-3/3;w=\'*\';x=\'+\';y=\'-\';z=\'/\';break;
        
        case 137:a=3*3+3*3+3;w=\'*\';x=\'+\';y=\'*\';z=\'+\';break;
        case 138:a=3*3+3*3-3;w=\'*\';x=\'+\';y=\'*\';z=\'-\';break;
        case 139:a=3*3+3*3*3;w=\'*\';x=\'+\';y=\'*\';z=\'*\';break;
        case 140:a=3*3+3*3/3;w=\'*\';x=\'+\';y=\'*\';z=\'/\';break;
        
        case 141:a=3*3+3/3+3;w=\'*\';x=\'+\';y=\'/\';z=\'+\';break;
        case 142:a=3*3+3/3-3;w=\'*\';x=\'+\';y=\'/\';z=\'-\';break;
        case 143:a=3*3+3/3*3;w=\'*\';x=\'+\';y=\'/\';z=\'*\';break;
        case 144:a=3*3+3/3/3;w=\'*\';x=\'+\';y=\'/\';z=\'/\';break;
        
        case 145:a=3*3-3+3+3;w=\'*\';x=\'-\';y=\'+\';z=\'+\';break;
        case 146:a=3*3-3+3-3;w=\'*\';x=\'-\';y=\'+\';z=\'-\';break;
        case 147:a=3*3-3+3*3;w=\'*\';x=\'-\';y=\'+\';z=\'*\';break;
        case 148:a=3*3-3+3/3;w=\'*\';x=\'-\';y=\'+\';z=\'/\';break;
        
        case 149:a=3*3-3-3+3;w=\'*\';x=\'-\';y=\'-\';z=\'+\';break;
        case 150:a=3*3-3-3-3;w=\'*\';x=\'-\';y=\'-\';z=\'-\';break;
        case 151:a=3*3-3-3*3;w=\'*\';x=\'-\';y=\'-\';z=\'*\';break;
        case 152:a=3*3-3-3/3;w=\'*\';x=\'-\';y=\'-\';z=\'/\';break;
        
        case 153:a=3*3-3*3+3;w=\'*\';x=\'-\';y=\'*\';z=\'+\';break;
        case 154:a=3*3-3*3-3;w=\'*\';x=\'-\';y=\'*\';z=\'-\';break;
        case 155:a=3*3-3*3*3;w=\'*\';x=\'-\';y=\'*\';z=\'*\';break;
        case 156:a=3*3-3*3/3;w=\'*\';x=\'-\';y=\'*\';z=\'/\';break;
        
        case 157:a=3*3-3/3+3;w=\'*\';x=\'-\';y=\'/\';z=\'+\';break;
        case 158:a=3*3-3/3-3;w=\'*\';x=\'-\';y=\'/\';z=\'-\';break;
        case 159:a=3*3-3/3*3;w=\'*\';x=\'-\';y=\'/\';z=\'*\';break;
        case 160:a=3*3-3/3/3;w=\'*\';x=\'-\';y=\'/\';z=\'/\';break;
        
        case 161:a=3*3*3+3+3;w=\'*\';x=\'*\';y=\'+\';z=\'+\';break;
        case 162:a=3*3*3+3-3;w=\'*\';x=\'*\';y=\'+\';z=\'-\';break;
        case 163:a=3*3*3+3*3;w=\'*\';x=\'*\';y=\'+\';z=\'*\';break;
        case 164:a=3*3*3+3/3;w=\'*\';x=\'*\';y=\'+\';z=\'/\';break;
        
        case 165:a=3*3*3-3+3;w=\'*\';x=\'*\';y=\'-\';z=\'+\';break;
        case 166:a=3*3*3-3-3;w=\'*\';x=\'*\';y=\'-\';z=\'-\';break;
        case 167:a=3*3*3-3*3;w=\'*\';x=\'*\';y=\'-\';z=\'*\';break;
        case 168:a=3*3*3-3/3;w=\'*\';x=\'*\';y=\'-\';z=\'/\';break;
        
        case 169:a=3*3*3*3+3;w=\'*\';x=\'*\';y=\'*\';z=\'+\';break;
        case 170:a=3*3*3*3-3;w=\'*\';x=\'*\';y=\'*\';z=\'-\';break;
        case 171:a=3*3*3*3*3;w=\'*\';x=\'*\';y=\'*\';z=\'*\';break;
        case 172:a=3*3*3*3/3;w=\'*\';x=\'*\';y=\'*\';z=\'/\';break;
        
        case 173:a=3*3*3/3+3;w=\'*\';x=\'*\';y=\'/\';z=\'+\';break;
        case 174:a=3*3*3/3-3;w=\'*\';x=\'*\';y=\'/\';z=\'-\';break;
        case 175:a=3*3*3/3*3;w=\'*\';x=\'*\';y=\'/\';z=\'*\';break;
        case 176:a=3*3*3/3/3;w=\'*\';x=\'*\';y=\'/\';z=\'/\';break;
        
        case 177:a=3*3/3+3+3;w=\'*\';x=\'/\';y=\'+\';z=\'+\';break;
        case 178:a=3*3/3+3-3;w=\'*\';x=\'/\';y=\'+\';z=\'-\';break;
        case 179:a=3*3/3+3*3;w=\'*\';x=\'/\';y=\'+\';z=\'*\';break;
        case 180:a=3*3/3+3/3;w=\'*\';x=\'/\';y=\'+\';z=\'/\';break;
        
        case 181:a=3*3/3-3+3;w=\'*\';x=\'/\';y=\'-\';z=\'+\';break;
        case 182:a=3*3/3-3-3;w=\'*\';x=\'/\';y=\'-\';z=\'-\';break;
        case 183:a=3*3/3-3*3;w=\'*\';x=\'/\';y=\'-\';z=\'*\';break;
        case 184:a=3*3/3-3/3;w=\'*\';x=\'/\';y=\'-\';z=\'/\';break;
        
        case 185:a=3*3/3*3+3;w=\'*\';x=\'/\';y=\'*\';z=\'+\';break;
        case 186:a=3*3/3*3-3;w=\'*\';x=\'/\';y=\'*\';z=\'-\';break;
        case 187:a=3*3/3*3*3;w=\'*\';x=\'/\';y=\'*\';z=\'*\';break;
        case 188:a=3*3/3*3/3;w=\'*\';x=\'/\';y=\'*\';z=\'/\';break;
        
        case 189:a=3*3/3/3+3;w=\'*\';x=\'/\';y=\'/\';z=\'+\';break;
        case 190:a=3*3/3/3-3;w=\'*\';x=\'/\';y=\'/\';z=\'-\';break;
        case 191:a=3*3/3/3*3;w=\'*\';x=\'/\';y=\'/\';z=\'*\';break;
        case 192:a=3*3/3/3/3;w=\'*\';x=\'/\';y=\'/\';z=\'/\';break;
        
        case 193:a=3/3+3+3+3;w=\'/\';x=\'+\';y=\'+\';z=\'+\';break;
        case 194:a=3/3+3+3-3;w=\'/\';x=\'+\';y=\'+\';z=\'-\';break;
        case 195:a=3/3+3+3*3;w=\'/\';x=\'+\';y=\'+\';z=\'*\';break;
        case 196:a=3/3+3+3/3;w=\'/\';x=\'+\';y=\'+\';z=\'/\';break;
        
        case 197:a=3/3+3-3+3;w=\'/\';x=\'+\';y=\'-\';z=\'+\';break;
        case 198:a=3/3+3-3-3;w=\'/\';x=\'+\';y=\'-\';z=\'-\';break;
        case 199:a=3/3+3-3*3;w=\'/\';x=\'+\';y=\'-\';z=\'*\';break;
        case 200:a=3/3+3-3/3;w=\'/\';x=\'+\';y=\'-\';z=\'/\';break;
        
        case 201:a=3/3+3*3+3;w=\'/\';x=\'+\';y=\'*\';z=\'+\';break;
        case 202:a=3/3+3*3-3;w=\'/\';x=\'+\';y=\'*\';z=\'-\';break;
        case 203:a=3/3+3*3*3;w=\'/\';x=\'+\';y=\'*\';z=\'*\';break;
        case 204:a=3/3+3*3/3;w=\'/\';x=\'+\';y=\'*\';z=\'/\';break;
        
        case 205:a=3/3+3/3+3;w=\'/\';x=\'+\';y=\'/\';z=\'+\';break;
        case 206:a=3/3+3/3-3;w=\'/\';x=\'+\';y=\'/\';z=\'-\';break;
        case 207:a=3/3+3/3*3;w=\'/\';x=\'+\';y=\'/\';z=\'*\';break;
        case 208:a=3/3+3/3/3;w=\'/\';x=\'+\';y=\'/\';z=\'/\';break;
        
        case 209:a=3/3-3+3+3;w=\'/\';x=\'-\';y=\'+\';z=\'+\';break;
        case 210:a=3/3-3+3-3;w=\'/\';x=\'-\';y=\'+\';z=\'-\';break;
        case 211:a=3/3-3+3*3;w=\'/\';x=\'-\';y=\'+\';z=\'*\';break;
        case 212:a=3/3-3+3/3;w=\'/\';x=\'-\';y=\'+\';z=\'/\';break;
        
        case 213:a=3/3-3-3+3;w=\'/\';x=\'-\';y=\'-\';z=\'+\';break;
        case 214:a=3/3-3-3-3;w=\'/\';x=\'-\';y=\'-\';z=\'-\';break;
        case 215:a=3/3-3-3*3;w=\'/\';x=\'-\';y=\'-\';z=\'*\';break;
        case 216:a=3/3-3-3/3;w=\'/\';x=\'-\';y=\'-\';z=\'/\';break;
        
        case 217:a=3/3-3*3+3;w=\'/\';x=\'-\';y=\'*\';z=\'+\';break;
        case 218:a=3/3-3*3-3;w=\'/\';x=\'-\';y=\'*\';z=\'-\';break;
        case 219:a=3/3-3*3*3;w=\'/\';x=\'-\';y=\'*\';z=\'*\';break;
        case 220:a=3/3-3*3/3;w=\'/\';x=\'-\';y=\'*\';z=\'/\';break;
        
        case 221:a=3/3-3/3+3;w=\'/\';x=\'-\';y=\'/\';z=\'+\';break;
        case 222:a=3/3-3/3-3;w=\'/\';x=\'-\';y=\'/\';z=\'-\';break;
        case 223:a=3/3-3/3*3;w=\'/\';x=\'-\';y=\'/\';z=\'*\';break;
        case 224:a=3/3-3/3/3;w=\'/\';x=\'-\';y=\'/\';z=\'/\';break;
        
        case 225:a=3/3*3+3+3;w=\'/\';x=\'*\';y=\'+\';z=\'+\';break;
        case 226:a=3/3*3+3-3;w=\'/\';x=\'*\';y=\'+\';z=\'-\';break;
        case 227:a=3/3*3+3*3;w=\'/\';x=\'*\';y=\'+\';z=\'*\';break;
        case 228:a=3/3*3+3/3;w=\'/\';x=\'*\';y=\'+\';z=\'/\';break;
        
        case 229:a=3/3*3-3+3;w=\'/\';x=\'*\';y=\'-\';z=\'+\';break;
        case 230:a=3/3*3-3-3;w=\'/\';x=\'*\';y=\'-\';z=\'-\';break;
        case 231:a=3/3*3-3*3;w=\'/\';x=\'*\';y=\'-\';z=\'*\';break;
        case 232:a=3/3*3-3/3;w=\'/\';x=\'*\';y=\'-\';z=\'/\';break;
        
        case 233:a=3/3*3*3+3;w=\'/\';x=\'*\';y=\'*\';z=\'+\';break;
        case 234:a=3/3*3*3-3;w=\'/\';x=\'*\';y=\'*\';z=\'-\';break;
        case 235:a=3/3*3*3*3;w=\'/\';x=\'*\';y=\'*\';z=\'*\';break;
        case 236:a=3/3*3*3/3;w=\'/\';x=\'*\';y=\'*\';z=\'/\';break;
        
        case 237:a=3/3*3/3+3;w=\'/\';x=\'*\';y=\'/\';z=\'+\';break;
        case 238:a=3/3*3/3-3;w=\'/\';x=\'*\';y=\'/\';z=\'-\';break;
        case 239:a=3/3*3/3*3;w=\'/\';x=\'*\';y=\'/\';z=\'*\';break;
        case 240:a=3/3*3/3/3;w=\'/\';x=\'*\';y=\'/\';z=\'/\';break;
        
        case 241:a=3/3/3+3+3;w=\'/\';x=\'/\';y=\'+\';z=\'+\';break;
        case 242:a=3/3/3+3-3;w=\'/\';x=\'/\';y=\'+\';z=\'-\';break;
        case 243:a=3/3/3+3*3;w=\'/\';x=\'/\';y=\'+\';z=\'*\';break;
        case 244:a=3/3/3+3/3;w=\'/\';x=\'/\';y=\'+\';z=\'/\';break;
        
        case 245:a=3/3/3-3+3;w=\'/\';x=\'/\';y=\'-\';z=\'+\';break;
        case 246:a=3/3/3-3-3;w=\'/\';x=\'/\';y=\'-\';z=\'-\';break;
        case 247:a=3/3/3-3*3;w=\'/\';x=\'/\';y=\'-\';z=\'*\';break;
        case 248:a=3/3/3-3/3;w=\'/\';x=\'/\';y=\'-\';z=\'/\';break;
        
        case 249:a=3/3/3*3+3;w=\'/\';x=\'/\';y=\'*\';z=\'+\';break;
        case 250:a=3/3/3*3-3;w=\'/\';x=\'/\';y=\'*\';z=\'-\';break;
        case 251:a=3/3/3*3*3;w=\'/\';x=\'/\';y=\'*\';z=\'*\';break;
        case 252:a=3/3/3*3/3;w=\'/\';x=\'/\';y=\'*\';z=\'/\';break;
        
        case 253:a=3/3/3/3+3;w=\'/\';x=\'/\';y=\'/\';z=\'+\';break;
        case 254:a=3/3/3/3-3;w=\'/\';x=\'/\';y=\'/\';z=\'-\';break;
        case 255:a=3/3/3/3*3;w=\'/\';x=\'/\';y=\'/\';z=\'*\';break;
        case 256:a=3/3/3/3/3;w=\'/\';x=\'/\';y=\'/\';z=\'/\';break;
        }
        if(a==n)
        printf("3%c3%c3%c3%c3=%d\n",w,x,y,z,n);
        else
        sum=sum+1;
    }
    if(sum==256)
    printf("本程序未找到解决方法!"); 
}

 后续改进版

#include<stdio.h>
main()
{
    int a,b,c,i,j;char w,x,y,z;
    printf("奥数趣解:填符号问题\n输出示例:\n3 3 3 3 3=6\n3*3*3+3-3=6\n");
    printf("请输入等号左边的整数:");scanf("%d",&a);
    printf("请输入等号右边的整数:");scanf("%d",&b);
    srand((unsigned)time(0)); 
    do
    {
        
        for(i=1;i<=10;i++)
        {
            c=a;
            j=rand()%4;
            switch(j)
            {
                case 0:c=a+c;w=\'+\';break;
                case 1:c=c-a;w=\'-\';break;
                case 2:c=c*a;w=\'*\';break;
                case 3:c=c/a;w=\'/\';break; 
            }
            j=rand()%4;
            switch(j)
            {
                case 0:c=a+c;x=\'+\';break;
                case 1:c=c-a;x=\'-\';break;
                case 2:c=c*a;x=\'*\';break;
                case 3:c=c/a;x=\'/\';break; 
            }
            j=rand()%4;
            switch(j)
            {
                case 0:c=a+c;y=\'+\';break;
                case 1:c=c-a;y=\'-\';break;
                case 2:c=c*a;y=\'*\';break;
                case 3:c=c/a;y=\'/\';break; 
            }
            j=rand()%4;
            switch(j)
            {
                case 0:c=a+c;z=\'+\';break;
                case 1:c=c-a;z=\'-\';break;
                case 2:c=c*a;z=\'*\';break;
                case 3:c=c/a;z=\'/\';break; 
            }
            if(c==b)    
            printf("%d%c%d%c%d%c%d%c%d%c%d=%d\n",a,w,a,x,a,y,a,z,a,b);
        }
    }while(c!=b);
    printf("部分答案有错误,请谨慎选择!!!"); 
}

 

四、实验小结(剖析个人得失)

 代码输入过程中需要细心,在有些容易让人疑惑的地方加入注释,方便下一次操作,这次奥数趣解实验经过与同学的讨论有了新的进展。

分类:

技术点:

相关文章: