Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

Can anyone fix my C programming code? (without changing the format) It gives me

ID: 647381 • Letter: C

Question

Can anyone fix my C programming code? (without changing the format)
It gives me wrong output.

Code:

#include <stdio.h>
#include <math.h>

void main(void)
{
   double du, i, cost;
   int n;
   char t;
   printf("How many calls do you want to evaluate");
   scanf_s("%d", &n);
   while (n!=0)
   {
       printf("Enter the time call is made (d is day, e is evening, n is night)");
       scanf_s("%s", &t);
       printf("Enter the duration of call(this must be in minutes like 8.2)");
       scanf_s("%Lf", &du);
       printf("The cost of %d call is $%lf",n++ , cost);

       switch (t)
       {
       case 'd':
           if (du > 1 && du < 10){
               i = ceil(du);
               cost = 0.10 / i;
              
           }
           else if (du>10 && du < 30){
               i = ceil(du);
               cost = 1.0 + 0.08 / i;
           }
           else{
               i = ceil(du);
               cost = 2.60 + 0.06 / i;
           }
       case 'e':
           if (du > 1 && du < 10){
               i = ceil(du);
               cost = 0.07 / i;
           }
           else if (du>10 && du < 30){
               i = ceil(du);
               cost = 1.0 + 0.05 / i;
           }
           else{
               i = ceil(du);
               cost = 1.70 + 0.04 / i;
           }
       case 'n':
           if (du > 1 && du < 10){
               i = ceil(du);
               cost = 0.04 / i;
           }
           else if (du>10 && du < 30){
               i = ceil(du);
               cost = 0.40 + 0.03 / i;
           }
           else{
               i = ceil(du);
               cost = 1.00 + 0.02 / i;
           }
       default:
           ;
       }
      
   }
   n++;
}

It should give an output like this:

Explanation / Answer

#include<stdio.h>
#include<math.h>

void main()
{
    float du,i,cost;
    int n;
    char t;
    printf("How many calls do you want to evaluate");
    scanf("%d", &n);
    while (n != NULL)
    {
   printf("Enter the time call is made (d is day, e is evening, n is night)");
   scanf("%s", &t);
   printf("Enter the duration of call(this must be in minutes like 8.2)");
   scanf("%f", &du);
   switch (t)
   {
   case 'd':
        if (du > 1 && du < 10)
         {
       i = ceil(du);
       cost = 0.10 / i;

        }
        else if (du>10 && du < 30)
         {
       i = ceil(du);
       cost = 1.0 + 0.08 / i;
        }
            else
         {
       i = ceil(du);
       cost = 2.60 + 0.06 / i;
        }
        printf(" The cost of call is $%f ", cost);
   case 'e':
        if (du > 1 && du < 10)
        {
       i = ceil(du);
       cost = 0.07 / i;
        }
        else if (du>10 && du < 30)
        {
       i = ceil(du);
       cost = 1.0 + 0.05 / i;
        }

       else
        {
       i = ceil(du);
       cost = 1.70 + 0.04 / i;
        }
        printf(" The cost of call is %f ", cost);
   case 'n':
        if (du > 1 && du < 10)
        {
       i = ceil(du);
       cost = 0.04 / i;
        }
        else if (du>10 && du < 30)
        {
       i = ceil(du);
       cost = 0.40 + 0.03 / i;
        }
        else
        {
       i = ceil(du);
       cost = 1.00 + 0.02 / i;
        }
        printf(" The cost of call is %f ", cost);
   default:
//            return 0;
        getch();
   }

    }
}

Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Drop an Email at
drjack9650@gmail.com
Chat Now And Get Quote