C语言总结错误

来源:互联网 发布:软件设计方案模板 编辑:程序博客网 时间:2024/06/06 00:52

1.美元换人民币

float USD, CNY;

printf("请输入美元数量:\n");

scanf("%f", &USD);

CNY = 6.82 * USD;

printf("CNY = %f\n", CNY);

在做这道题的时候,只需要控制台输出,然后就是美元和人民币换算的汇率:6.82。

2.输入三个数是否能构成三角形

int m, n, p;

printf("输入三个数:\n");

scanf("%d %d %d", &m, &n, &p);

if(p > m - n && p < m + n) {

  printf("这三个数能构成三角形\n");

}

 else  {

  printf("这三个数不能构成三角形\n");

}

注意:判断三角形成立的两个条件要同时满足。

3.编写一个完成两个数的四则运算程序。如:用户输入33+36则输出的结果为69.00

要求运算结果保留两位有效小数,用户输入时将2个运算数以及运算符都输入,根据运算符求结果。

float d, e, j;

char arithmetc;

printf("%f %c %f", %d, %arithmetc, %e );

switch (arithmetc) {

 case '+':{

 j = d + e;

printf("j = %.2f\n", j);

break;

}

case '-': {

j = d - e;

printf("j = %.2f\n", j);

break;

}

case '*' : {

j = d * e;

printf("j = %.2f\n", j);

break;

}

case '/': {

j = d / e;

printf("j = %.2f\n", j);

break;

}

在这道题中要求也输出运算符,定义arithmetic(四则运算)然后根据数据类型在输出的时候用对应的转换符;%.2f的意思是运算结果保留2为有效小数。

4.整元换零钱,一元兑换成1分,2分,5分的硬币,共有多少种换发,编写代码时,使用枚举值来表示1分,2分,5分。

enum money {

one = 1,

two = 2,

five = 5,

};

int i;

printf("整元换零钱的总数:\n");

for(int f = 0; f <= 100; f++) {

  for(int g = 0; g <= 50; g++) {

    for(int h = 0; h <= 20; h++) {

       if(one * f + two * g + five * h = 100){

          printf("%d %d %d\n", f, g, h);

           i++;

               }

            }

       }

}

printf("整元换零钱共有:%d\n", i);

注意:在枚举后的大括号后面不要忘记分号,for循环的嵌套和if条件语句运用要恰当,计算总数的输出在for循环的最后。记得要在合适的位置才能输出正确的结果。

5.编写一个程序打印一个表,在控制台输入两个数,根据用户输入两个数的范围依次打印出表的每一行都是这个整数、以及它的平方以及它的立方。

(1)int a1, a2, a3, a4, a5, x;

         printf("输入上限和下线:\n");

         scanf("%d %d", &a1, &a2);

         while(a3 < (a2 - a1 + 1)) {

         x = arc4random () % (a2 - a1 + 1) + a1;

         a4 = x * x;

         a5 = x * x * x;

          printf("%d %d %d\n", x, a4, a5);

         a3++;

}

(2) ……………………

    for(a3 = 0; a3 < (a2 - a1 + 1); a3++) {

     x = arc4random() % (a2 - a1 + 1) + a1;

     a4 = x * x;

     a5 = x * x * x;

     printf("%d %d %d\n", x, a4, a5);

}

(3)int max, min;

printf("输入上限和下限:\n");

scanf("%d %d", &min, &max);

for(int i = min; i < max; i++) {

  printf("%d %d %d\n", i, i * i, i * i * i);

}

(1)和(2)中都用到随机数的运算,分别用switch语句和for循环,随机输出范围内的一个数,然后计算平方和立方,在输出,但是需要定义的数据较多,编写代码的时候容易搞混。所以在(3)中直接在上限和下限按序输出比较简单,只需要一个fou循环规律输出,初始值为下限,循环条件i小于上限即可。

6.使用循环嵌套产生图案:

F

FE

FED

FEDC

FEDCB

FEDCBA

char ch = 'F';

for(int i = 1; i <= 6; i++) {

   for(int j = 1; j <= i; j++) {

     printf("%c", ch);

     ch = ch - 1;

}

  ch = 'F';

  printf("\n");

}

7.使用循环打印三角形

         *

        ***

       *****

for(int k = 0; k < 3; k++){

   for(int l = 2 - k; l >0; l--); {

     printf(" ");

}

for(int m = 2 * k + 1; m > 0; m++) {

  printf("*");

}

printf("\n");

}











0 0
原创粉丝点击