《C语言程序设计现代方法:第2版 修订版》第七章课后编程题

《C语言程序设计现代方法:第2版 修订版》第七章课后编程题,水平有限,仅供参考。
7.2

#include <stdio.h>

int main (void)
{
    int i,n;

    printf("This program prints a table of squares.\n");
    printf("Enter number of entries in table: ");
    scanf("%d",&n);
    getchar();

    for (i = 1; i <=n ; i++) {
        if(i%24==0){
            printf("Press Enter to continue...");
            while (getchar()!='\n');
        }
        printf("%10d%10d\n",i,i*i);
    }

    return 0;
}



//
// Created by Chen on 2022/6/11.
//

7.3

#include <stdio.h>

int main (void)
{
    double n,sum=0;

    printf("This program sums a series of integers.\n");
    printf("Enter integers (0 to terminate): ");

    scanf("%lf",&n);
    while (n!=0)
    {
        sum+=n;
        scanf("%lf",&n);
    }
    printf("The sum is: %lf\n",sum);

    return 0;
}

//
// Created by Chen on 2022/6/11.
//

7.4

#include <stdio.h>

int main (void)
{
    int ch;
    printf("Enter phone number:");

    while((ch=getchar())!='\n')
    {
        switch (ch){
            case ('A'):case ('B'):case ('C'):
                putchar('2');break;
            case ('D'):case ('E'):case ('F'):
                putchar('3');break;
            case ('G'):case ('H'):case ('I'):
                putchar('4');break;
            case ('J'):case ('K'):case ('L'):
                putchar('5');break;
            case ('M'):case ('N'):case ('O'):
                putchar('6');break;
            case ('P'):case ('R'):case ('S'):
                putchar('7');break;
            case ('T'):case ('U'):case ('V'):
                putchar('8');break;
            case ('W'):case ('X'):case ('Y'):
                putchar('9');break;
            default:putchar(ch);
        }
    }
}

//
// Created by Chen on 2022/6/11.
//

7.5

#include <stdio.h>
#include <ctype.h>

int main (void)
{
    int ch,sum=0;

    printf("Enter a word:");

   while ((ch=getwchar())!='\n')
   {
       switch (toupper(ch)){
           case ('A'):case ('E'):case ('I'):case ('L'):case ('N'):
           case ('O'):case ('R'):case ('S'):case ('T'):case ('U'):
               sum+=1;
               break;
           case ('D'):case ('G'):
               sum+=2;
               break;
           case ('B'):case ('C'):case ('M'):case ('P'):
               sum+=3;
               break;
           case ('F'):case ('H'):case ('V'):case ('W'):case ('Y'):
               sum+=4;
               break;
           case ('K'):
               sum+=5;
               break;
           case ('J'):case ('X'):
               sum+=8;
               break;
           case ('Q'):case ('z'):
               sum+=10;
               break;
           default:printf("Bye");
       }
   }
    printf("Scrabble value:%d",sum);

    return 0;
}
//
// Created by Chen on 2022/6/11.
//

7.6

#include <stdio.h>

int main (void)
{
    printf("%d\n",sizeof(int));
    printf("%d\n",sizeof(short));
    printf("%d\n",sizeof(long));
    printf("%d\n",sizeof(float));
    printf("%d\n",sizeof(double));
    printf("%d\n",sizeof(long double));

    return 0;
}

7.7

#include <stdio.h>

int main (void)
{
    int num1,denom1,num2,denom2,result_num,result_denom;
    char ch;

    printf("Enter two fractions separated by a plus sign: ");
    scanf("%d/%d%c%d/%d",&num1,&denom1,&ch,&num2,&denom2);

    switch (ch){
        case ('+'):{
            result_num=num1*denom2+num2*denom1;
            result_denom=denom1*denom2;
            break;
        }
        case ('-'):{
            result_num=num1*denom2-num2*denom1;
            result_denom=denom1*denom2;
            break;
        }
        case ('*'):{
            result_num=num1*num2;
            result_denom=denom1*denom2;
            break;
        }
        case ('/'):{
            result_num=num1*denom2;
            result_denom=denom1*num2;
            break;
        }
        default:printf("Bye");
    }

    printf("The result is %d/%d",result_num,result_denom);
    return 0;
}
//
// Created by Chen on 2022/6/11.
//

7.8

#include <stdio.h>
#include <ctype.h>

int main (void)
{
    int hour,min,compare;
    char ch;

    printf("Enter a 24-hour time:");
    scanf("%d:%d %c",&hour,&min,&ch);

    switch (toupper(ch)){
        case ('P'):
            compare=(hour+12)*60+min;
            break;
        case ('A'):
            compare=hour*60+min;
            break;
        default:printf("Bye");
    }

    if(compare<=8*60+51.5){
        printf("Cloest departure time is 8:00 a.m,arrivint at 10:16 a.m.");
    }
    else if(compare>=8*60+51.5&&compare<=9*60+43+48){
        printf("Cloest departure time is 9:43 a.m,arrivint at 11:52 a.m.");
    }
    else if(compare>=9*60+43+48&&compare<=11*60+19+44){
        printf("Cloest departure time is 11:19 a.m,arrivint at 13:31 p.m.");
    }
    else if(compare>=11*60+19+44&&compare<=12*60+47+36.5){
        printf("Cloest departure time is 12:47 p.m,arrivint at 15:00 p.m.");
    }
    else if(compare>=12*60+47+36.5&&compare<=14*60+52.5){
        printf("Cloest departure time is 14:00 p.m,arrivint at 16:08 a.m.");
    }
    else if(compare>=14*60+52.5&&compare<=15*60+45+97.5){
        printf("Cloest departure time is 15:45 p.m,arrivint at 17:55 p.m.");
    }
    else if(compare>=15*60+45+97.5&&compare<=19*60+82.5){
        printf("Cloest departure time is 19:00 p.m,arrivint at 21:20 p.m.");
    }
    else{
        printf("Cloest departure time is 21:45 p.m,arrivint at 23:58 p.m.");
    }

    return 0;
}
//
// Created by Chen on 2022/6/11.
//

7.9

#include <stdio.h>
#include <ctype.h>

int main (void)
{
    int hour,min;
    char ch;

    printf("Enter a 12-hour time:");
    scanf("%d:%d %c",&hour,&min,&ch);

    switch (toupper(ch)){
        case ('P'):
            hour=hour+12;
            break;
        case ('A'):
            hour=hour;
            break;
        default:printf("Bye");
    }

    printf("Equivalent 24-hour time:%d:%d",hour,min);

    return 0;
}
//
// Created by Chen on 2022/6/11.
//

7.10

#include <stdio.h>
#include <ctype.h>

int main (void)
{
    int sum,ch;

    printf("Enter a sentence:");
    while ((ch=getchar())!='\n')
    {
        ch=toupper(ch);
        if (ch=='A'|ch=='E'|ch=='I'|ch=='O'|ch=='U')
            sum+=1;
    }
    printf("Your sentence contains %d vowels.",sum);
}
//
// Created by Chen on 2022/6/12.
//

7.11

#include <stdio.h>

int main (void)
{
    char first,second;

    printf("Enter a firtst and last name:");
    scanf(" %c",&first);

    while ((second=getchar())!=' ');
    while ((second=getchar())==' ');

    do{
        putchar(second);
    }while((second=getchar())!='\n'&&(second!=' '));

    printf(",%c",first);

    return 0;
}

7.12

#include <stdio.h>

int main (void)
{
    double num,sum;
    char ch;

    printf("Enter an expression:");
    scanf("%lf",&sum);
    while ((ch=getchar())!='\n')
    {
        switch (ch){
            case ('+'):
                scanf("%lf",&num);
                sum=sum+num;
                break;
            case ('-'):
                scanf("%lf",&num);
                sum=sum-num;
                break;
            case ('*'):
                scanf("%lf",&num);
                sum=sum*num;
                break;
            case ('/'):
                scanf("%lf",&num);
                sum=sum/num;
                break;
            default:
                break;
        }
    }

    printf("Value of expression:%lf",sum);

    return 0;
}
//
// Created by Chen on 2022/6/12.
//

7.13

#include <stdio.h>

int main (void)
{
    float count,count_space;
    char ch;

    printf("Enter a sentence:");

    while ((ch=getchar())!='\n')
    {
        if(ch==' ')
            count_space++;
        else
            count++;

    }

    printf("Average word length:%.1f",count/(count_space+1));

    return 0;
}
//
// Created by Chen on 2022/6/13.
//

7.14

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

int main (void)
{
    double x,y,y_new,y_old;

    printf("Enter a positive number:");
    scanf("%lf",&x);

    y=1;
    y_new=(y+x/y)/2;

    while (fabs(y_new-y_old)>=0.00001)
    {
        y_old=y_new;
        y_new=(y_old+x/y_new)/2;
    }
    printf("Square root:%lf",y_new);

    return 0;
}
//
// Created by Chen on 2022/6/13.
//

7.15

#include <stdio.h>

int main (void)
{
    int num,sum,temp;

    printf("Enter a poseitive integer:");
    scanf("%d",&num);

    sum=temp=num;

    while (num>1)
    {
        num--;
        sum*=num;
    }

    printf("Factorial of %d:%d",temp,sum);

    return 0;
}
//
// Created by Chen on 2022/6/13.
//
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值