C语言基础-----运算符与表达式

时间:2022-05-14 01:43:03

 4.1.1.2(20分钟)----fun1()
                   要求从键盘上接收三个整数a,b,c,
                     分别求++a + b + c,a++ + b + c++,a + b++ + ++c和++a + ++b + ++c的和,并将其输出。

  void fun1()
  {
   int a=0,b=0,c=0;
   printf("请输入三个整数,以逗号隔开\n");
   scanf("%d,%d,%d",&a,&b,&c);
   printf("++a + b + c=%d\n",(++a)+b+c);
   printf("a++ + b + c++=%d\n",(a++)+b+(c++));
   printf("a++ + b + c++=%d\n",(a++)+b+(c++));
   printf("a + b++ + ++c=%d\n",a+(b++)+(++c));
   printf("++a + ++b + ++c=%d\n",(++a)+(++b)+(++c));
  }

 

       4.2.1.1(15分钟)----fun2()
  分别定义三个int变量,使用scanf从键盘上接收三个整数,然后对它们求和,输出求和结果。
  注意需要将求和的结果另外保存到一个变量中,然后再执行输出操作。


  void fun2()
  {
   int x=0,y=0,z=0,num=0;
   printf("请输入三个整数,以逗号的形式隔开");
   scanf("%d,%d,%d",&x,&y,&z);
   num=x+y+z;
   printf("%d+%d+%d=%d",x,y,z,num);
  }

 

  4.2.1.2(20分钟)----fun3();
  定义一个int类型的变量a,并从键盘接收一个整数,将其赋予a,定义一个float类型的变量b,
  并从键盘接收一个浮点数,将其赋予b,再定义一个float类型的变量c,计算a+b的值,并将其赋予c。


        void fun3()
  {
     int a=0;
     float b=0.0,c=0.0;

     printf("请输入一个整数,一个浮点数\n");
     scanf("%d,%f",&a,&b);
     c=b+a;
     printf("a+b=%g",c);
  }

 

  4.2.1.3(15分钟)-----fun4();
             编写一个程序,该程序要求输入一个float类型的数字并打印该数的立方值,
             并将其立方值赋给一个int类型的变量,打印该int类型的值。


         void fun4()
  {
     float f=0.0;
     int i=0;
     printf("请输入一个浮点数\n");
     scanf("%f",&f);
     i=f*f*f;
     printf("将该浮点数,得立方赋值给一个整形变量结果为:%d",i);

  }


     4.2.1.4(20分钟)-------fun5()
  从键盘上接收三个整数,依次赋给a,b,c三个变量,
  计算(a+b)÷(a-c),(ab2+ac+c)的值,并将其赋给变量x,y,打印x,y的值。

  void fun5()
  {
   int a=0,b=0,c=0,x=0,y=0;
   printf("请输入三个整数\n");
   scanf("%d,%d,%d",&a,&b,&c);
   x=(a+b)/(a-c);
   y=(a*b*b+a*c+c);
   printf("(%d+%d)/(%d-%d)=%d,(%d*%d*%d+%d*%d+%d)=%d",a,b,a,c,x,a,b,b,a,c,c,y);
  }

   4.3.1.1(15分钟)-----fun6()
                       初始化char,int,float,double类型的四个变量a,b,c,d,
                       计算其在内存中所占有的空间大小

        void fun6()
  {
    int i=0;
    char c='0';
    float f=0.0;
    double d=0.00;
    printf("int 类型占    %d  个字节\t\n",sizeof(i));
    printf("char 类型占    %d 个字节\t\n",sizeof(c));
    printf("float 类型占    %d  个字节\t\n",sizeof(f));
    printf("double 类型占    %d  个字节\t\n",sizeof(d));


  }

         4.3.1.2(15分钟)------fun7()
                        编写一个程序,该程序要求用户输入天数,然后将该值转换成周数和天数。例如,改程序将18天转换成2周4天。
                         用下面的格式显示结果:
           18 days are 2 weeks and 4 days.(15分钟)

   void fun7()
   {   int days=0,weeks=0,days_num=0;

    printf("请输入天数:\n");
    scanf("%d",&days);
    weeks=days/7;
    days_num=days%7;
    printf("%d days are %d weeks and %d days",days,weeks,days_num);

   }

          5.1.1.1(25分钟)------fun8()
   编写一个程序,程序能完成一个求矩形面积和周长的功能:
   从键盘上依次接收矩形的长和宽两个数据,输出这个矩形的面积和周长。

           void fun8()
   {    float length=0.0,width=0.0;

     printf("请输入矩形的长和宽");
     scanf("%f,%f",&length,&width);
     printf("矩形面积:%g\n矩形的周长%g\n",length*width,(width+length)*2);

   }

 

   5.1.1.2(25分钟)-------fun9()
   构造具有下面功能的语句,并依次打印其结果:
   (1)把变量x的值减1;
   (2)把n除以k所得的余数赋给m;
   (3)用b减去a的差去除q,并将结果赋给p;
   (4)用a与b的和除以c与d的积,并将结果赋给x;


             void fun9()
   {int x=0,n=0,k=0,m=0,b=0,p=0,q=0,a=0,c=0,d=0;
     printf("请输入X的值(整数)\n ");
     scanf("%d",&x);
     printf("把变量x的值减1=%d\n",--x);
     printf("请输入n和k的值(整数)\n");
     scanf("%d,%d",&n,&k);
     m=n%k;
     printf("n除以k所得的余数=%d\n",m);
     printf("请输入b和a和q的值(整数)\n");
    scanf("%d,%d,%d",&b,&a,&q);
    p=(b-a)/q;
    printf("b减去a的差去除q=%d\n",p);
    printf("请输入 a,b,c,d");
    scanf("%d,%d,%d,%d",&a,&b,&c,&d);
    x=(a+b)/(c*d);
    printf("a与b的和除以c与d的积%d",x);

   }

   5.1.1.3(40分钟)-------fun10()
   用C语言编程,根据用户输入的半径计算球的表
   面积,体积,
   经过圆心的横切圆的面积以及以此以此球的半径、
   直径作为直径和高的圆柱体的侧面积、表面积和体积(将π定义成值为3.14的符号常量)。


            void fun10()
   {
    float r=0;
    printf("请输入球体的半径");
    scanf("%f",&r);
    printf("球的表面积 %g\n",4*PI*r*r);
    printf("球的体积 %g\n",4/3.0*PI*r*r*r);
    printf("切圆面积 %g\n",PI*r*r);
    printf("圆柱的侧面积%g\n",PI*r*2*r);
    printf("圆柱的表面积%g\n",PI*r*2*r+r/2.0*r/2.0*PI*2);
    printf("圆柱的体积%g\n",r/2.0*r/2.0*PI*2*r);

   }
   5.1.1.4(30分钟)------fun11()
   编写一个程序,要求用户输入一个数字,程序会自动计算以此数字为开始往后十个数的和,
   并将结果打印。(预习下一章内容)

   void fun11()
   {
    int num=0,sign=1,sum=0; //sign 作为标记
      printf("请输入一个数:\n");
      scanf("%d",&num);

      while(1)
      {
       sum+=num;
       num++;
       sign++;
      if(sign>10)
      {
       break;
      }
      }
      printf("此数字为开始往后十个数的和%d",sum);
   }