第一章课后题

1.小学四则运算的题目

#include <stdio.h>

#include <ctype.h>

#include <time.h>

#include <stdlib.h>

#include <windows.h>

#define IDNO_LENGTH 6

#define CALC_KIND 4

 

char getSignal();

int getResult(int,int,char);

void takeTest();

void falsePrint(int);

void correctPrint(int);

 

//main函数

void main()

{

    while(1)

    {

        takeTest();

    }

     

}

 

//获取随机运算符

char getSignal()

{

    char signal[CALC_KIND]={'+','-','*','/'};

    srand((unsigned)time(NULL));

    return signal[rand()%4];

}

 

//获取随机数

int random(double start, double end)

{

    return (int)(start+(end-start)*rand()/(RAND_MAX+ 1.0));

}

 

//运算

int getResult(int num1,int num2,char signal)

{

    int res;

    switch(signal)

    {

    case '+':

        res=num1+num2;break;

    case '-':

        res=num1-num2;break;

    case '*':

        res=num1*num2;break;

    case '/':

        res=num1/num2;break;

    default:

        res=0;

        printf("运算符不符合规则\n");

    }

    return res;

}

 

//列出题目

void takeTest()

{

    int giveRes;

    int num1;

    int num2;

    char signal;

    int printFlag;

 

    srand((unsigned)time(NULL));

    signal=getSignal();

    num1=random(0,100);

    num2=random(1,100);

 

    if(signal=='-')

    {

        if(num1<num2)

        {

            int temp;

            temp=num1;

            num1=num2;

            num2=temp;

        }

    }

 

    if(signal=='/')

    {

        if(num2==0)

        {

            int temp;

            temp=num1;

            num1=num2;

            num2=temp;

        }

    }

 

    printf("%d%c%d=",num1,signal,num2);

    scanf("%d",&giveRes);

    fflush(stdin);

 

    if(getResult(num1,num2,signal)==giveRes)

    {

        printFlag=random(1,5);

        correctPrint(printFlag);

    }

    else

    {

        printFlag=random(1,4);

        falsePrint(printFlag);

        printf("正确答案:%d\n",getResult(num1,num2,signal));

    }

}

 

//回答正确打印信息

void correctPrint(int num)

{

    switch(num)

    {

    case 1:

        printf("You're right!\n");break;

    case 2:

        printf("It's OK!\n");break;

    case 3:

        printf("Correct!\n");break;

    case 4:

        printf("Perfect!\n");break;

    case 5:

        printf("Good!\n");break;

    default:

        printf("Powerful!\n");break;

    }

}

 

//回答错误打印信息

void falsePrint(int num)

{

    switch(num)

    {

    case 1:

        printf("You're lost!");break;

    case 2:

        printf("Failure!");break;

    case 3:

        printf("Come on!");break;

    case 4:

        printf("It's wrong!");break;

    default:

        printf("Incorrect!");break;

    }

}

2.大家好,我是一名学生,学的专业是计算机应用技术,我希望学习完现代软件工程这门课之后,掌握一部分关于这门课的知识,上课时间为周一七八节和周二一二节,上课时间有限,课下我也会花费一定时间,看个人时间的多少再分配,我感觉我的预习只能了解一些专业词汇,对课本的理解不透彻,对课本的印象不深。

3.代码路径的意思具体是什么?

有没有软件开发出来不是为了盈利?如果不为了盈利,还能为了什么来开发软件?

如果硬件的配置低,软件是不是更新到一定版本就不能更新了?那硬件能更新么?

软件如何更新的版本?比如游戏里的怎么做到不停机更新?

4.有些软件是下载之后带来的垃圾软件,下载一个软件完成之后,蹦出好几个不相关的软件,而且删除不彻底,有些软件下载是为了更好的跟人交流,有些软件下载是跟随潮流,有些软件下载是因为游戏好玩。软件开发者的目标应该都是为了盈利,尤其是商业软件。软件开发者的目标是为了有更多的用户,然后赚用户的钱,有的软件也给用户提供了便利。

软件通过系统更新来处理BUG。

同一类型的软件通过用户量的多少,设计的便利程度,收费价格来竞争。

5.软件工程不只是教会不会写程序的人写程序,也可以用过分组锻炼人的团队意识,还教人读程序,锻炼逻辑思维能力

6.我所在的学校有计算机科学专业和软件工程专业。术业有专攻,每个专业的方向应该是不同的。

转载于:https://www.cnblogs.com/July1/p/8607993.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值