2023-2024-1 20231420 《计算机基础与程序设计》课程总结

作业信息

这个作业属于哪个课程 2023-2024-1《计算机基础与程序设计》
这个作业要求在哪里 2023-2024-1计算机基础与程序设计第十五周作业
这个作业的目标 课程总结
作业正文 https://www.cnblogs.com/eleslsel/p/17946209.html

每周作业链接汇总

第一周

快速浏览一遍教材《计算机科学概论》,课本每章提出至少一个自己不懂的或最想解决的问题并在期末回答这些问题。

第二周

1.学习《计算机科学概论》第1章并完成云班课测试;2.学习《C语言程序设计》第1章并完成云班课测试。

第三周

1.学习《计算机科学概论》第2、3章并完成云班课测试;2.学习《C语言程序设计》第2章并完成云班课测试。

第四周

1.学习《计算机科学概论》第4、5章并完成云班课测试;2.学习《C语言程序设计》第3章并完成云班课测试。

第五周

1.学习《计算机科学概论》第6章并完成云班课测试;2.学习《C语言程序设计》第4章并完成云班课测试。

第六周

1.学习《计算机科学概论》第7章并完成云班课测试;2.学习《C语言程序设计》第5章并完成云班课测试。

第七周

1.学习《计算机科学概论》第8章并完成云班课测试;2.学习《C语言程序设计》第6章并完成云班课测试。

第八周

1.学习《计算机科学概论》第9章并完成云班课测试;2.学习《C语言程序设计》第7章并完成云班课测试。

第九周

1.学习《计算机科学概论》第10,11章并完成云班课测试;2.学习《C语言程序设计》第8章并完成云班课测试。

第十周

1.学习《计算机科学概论》第12,13,14章并完成云班课测试;2.学习《C语言程序设计》第9章并完成云班课测试。

第十一周

1.学习《计算机科学概论》第15,16章并完成云班课测试;2.学习《C语言程序设计》第10章并完成云班课测试。

第十二周

学习《C语言程序设计》第11章并完成云班课测试。

第十三周

学习《C语言程序设计》第12章并完成云班课测试。

第十四周

学习《C语言程序设计》第13章并完成云班课测试。

实验报告链接汇总

实验一

点击查看实验内容
基于云平台或者在本地创建虚拟机,并熟悉操作系统基本命令。完成下面的任务:(1)基于云平台或者在本地创建虚拟机;(2)熟悉操作系统基本命令;(3)熟悉C语言编译调试命令。

实验1熟悉Linux命令-1-Liinux命令

实验1熟悉Linux命令-2-gcc

实验1熟悉Linux命令-3-gdb

实验二

点击查看实验内容
计算机在教育中的应用常被称为计算机辅助教学(Computer-Assisted Instruction, CAI)。请编写一个程序来帮助小学生学习四则运算,按下列任务要求以循序渐进的方式编程。
(1)程序首先随机产生两个1~10之间的正整数,在屏幕上打印出问题,例如:
6*7=
然后让学生输入答案。程序检查学生输入的答案是否正确。若正确,则打印“Right”,然后问下一个问题;否则打印“Wrong! Please try again.”,然后提示学生重做,直到答对为止。
(2)在上述功能实现的基础之上,当学生回答错误时,最多给三次重做的机会,三次仍未做对,则提示“Wrong! You have tried three times! Test over!”,程序结束。
(3)在任务1的基础之上,连续做10道乘法运算题,不给机会重做,若学生回答正确,则显示“Right!”,否则显示“Wrong!”。10道题全部做完后,按每题10分统计并输出总分,同时为了记录学生能力提高的过程,再输出学生的回答正确率(即正确题数除以总题数的百分比)。
(4)在任务3的基础上,通过计算机随机产生10道四则运算题,两个操作数为1~10之间的随机数,运算类型为随机产生的加、减、乘、整除中的任意一种,不给机会重做,如果学生回答正确,则显示“Right!”,否则显示“Wrong!”。10道题全部做完后,按每题10分统计总得分,然后打印出总分和学生的回答正确率。
(5)在任务4的基础上,为使学生通过反复练习熟练掌握所学内容,在学生完成10道运算题后,若学生回答正确率低于75%,则重新做10道题,直到回答正确率高于75%时才退出程序。
(6)开发一个CAI系统所要解决的另一个问题是学生疲劳的问题。消除学生疲劳的一种办法就是通过改变人机对话界面来吸引学生的注意力。在任务5的基础上,使用随机数产生函数产生一个1~4之间的随机数,配合使用switch语句和printf()函数调用,来为学生输入的每一个正确或者错误的答案输出不同的评价。
对于正确答案,可以在以下4种提示信息中选择一个进行显示:
Very good!
Excellent!
Nice work!
Keep up the good work!
对于错误答案,可在以下4种提示信息中选择一个进行显示:
No. Please try again.
Wrong. Try once more.
Don’t give up!
Not correct. Keep trying.
点击查看代码
#include <stdio.h>
#include <stdlib.h>
#include <time.h>

int main()
{
    int m,n,p,q,a,b,c,answer,randnum,randtwo,countone=0,counttwo=0,count=0,trueone=0,truetwo=0,rateone=0,ratetwo=0;
    char randchar;
    srand(time(NULL));
    m=rand()%9+1;
    n=rand()%9+1;
    p=m*n;
//    一道乘法运算(1)
    do
//        三次尝试机会(2)
    {
        printf("%d*%d=",m,n);
        scanf("%d",&q);
        if(p!=q&&countone<2)
            printf("Wrong!Please try again.\n");
        countone++;
    }
    while(p!=q&&countone<=2);
    if(p==q)
    {
        printf("Right!\n");
        do
//                十道乘法运算(3)
        {
            srand(time(NULL));
            a=rand()%9+1;
            b=rand()%9+1;
            answer=a*b;
            printf("%d * %d =",a,b);
            scanf("%d",&c);
            if(answer!=c)
                printf("Wrong!\n");
            else
            {
                printf("Right!\n");
                trueone++;
            }
            counttwo++;
        }
        while(counttwo<=9);
        rateone=trueone*10;
        printf("得分=%d\n正确率=%d%%\n",trueone,rateone);
        do
//                正确率低于75%重来(5)
        {
            do
//                十道四则运算(4)
            {
                srand(time(NULL));
                a=rand()%9+1;
                b=rand()%9+1;
                randnum=rand()%4;
                switch(randnum)
//                四个case来生成四则运算(4)
                {
                case 0:
                    randchar='+';
                    answer=a+b;
                    break;
                case 1:
                    randchar='-';
                    answer=a-b;
//                    小缺陷:答案可能是负数
                    break;
                case 2:
                    randchar='*';
                    answer=a*b;
                    break;
                case 3:
                    randchar='/';
                    answer=a/b;
//                    小缺陷:是整除
                    break;
                }
                printf("%d %c %d =",a,randchar,b);
                scanf("%d",&c);
                randtwo=rand()%4;
                switch(randtwo)
//                四个case来生成不同回应(6)
                {
                case 0:
                    if(answer!=c)
                        printf("No. Please try again.\n");
                    else
                    {
                        printf("Very good!\n");
                        truetwo++;
                    }
                    break;
                case 1:
                    if(answer!=c)
                        printf("Wrong. Try once more.\n");
                    else
                    {
                        printf("Excellent!\n");
                        truetwo++;
                    }
                    break;
                case 2:
                    if(answer!=c)
                        printf("Don’t give up!\n");
                    else
                    {
                        printf("Nice work!\n");
                        truetwo++;
                    }
                    break;
                case 3:
                    if(answer!=c)
                        printf("Not correct. Keep trying.\n");
                    else
                    {
                        printf("Keep up the good work!\n");
                        truetwo++;
                    }
                    break;
                }
                count++;
            }
            while(count<=9);
            ratetwo=truetwo*10;
            printf("得分=%d\n正确率=%d%%\n",truetwo,ratetwo);
            count=0;
            truetwo=0;
        }
        while(ratetwo<75);
    }
    else
        printf("Wrong! You have tried three times! Test over!\n");
    return 0;
}

实验三

考试。

实验四

点击查看实验内容
1.学生成绩管理系统V1.0
某班有最多不超过40人(具体人数由键盘输入)参加某门课程的考试,用数组作函数参数编程实现如下学生成绩管理:
(1)录入每个学生的学号和考试成绩;
(2)计算课程的总分和平均分;
(3)按成绩由高到低排出名次表;
(4)按学号由小到大排出成绩表;
(5)按学号查询学生排名及其考试成绩;
(6)按优秀(90-100)、良好(80-89)、中等(70-79)、及格(60-69)、不及格(0-59)5个类别,统计每个类别的人数以及所占的百分比;
(7)输出每个学生的学号、考试成绩,课程总分和平均分。
2.学生成绩管理系统V1.1
在学生成绩管理系统V1.0的基础上,要求程序运行后先显示如下菜单,并提示用户输入选项:
(1)Append record
(2)Calculate total and average score of course
(3)Sort in descending order by score
(4)Sort in ascending order by number
(5)Search by number
(6)Statistic analysis
(7)List record
(8)Exit
点击查看代码
#include <stdio.h>
#include <stdlib.h>
int readscore(long xuehao[],float score[]);
//函数作用:录入每个学生的学号和考试成绩
float add(float score[],int n);
//函数作用:计算课程的总分
void paixuchengji(long xuehao[],float score[],int rank[],int n);
//函数作用:按成绩由高到低排出名次表
void paixuxuehao(long xuehao[],float score[],int rank[],int n);
//函数作用:按学号由小到大排出成绩表
void write(long xuehao[],float score[],int rank[],int n);
//函数作用:输出每个学生的学号、考试成绩、排名
void sortt(float score[],int sort[],int n);
//函数作用:统计每个类别的人数以及所占的百分比
void search(long xuehao[],float score[],int rank[],int n);
//函数作用:按学号查询学生排名及其考试成绩
int main()
{
    int n,rank[40],sort[5],choose;
    long xuehao[40];
    float score[40],total,aver;
    printf("(1)Append record\n(2)Calculate total and average score of course\n(3)Sort in descending order by score\n(4)Sort in ascending order by number\n(5)Search by number\n(6)Statistic analysis\n(7)List record\n(8)Exit\n");

    do
    {
        printf("Please choose one:");
        scanf("%d",&choose);

        switch(choose)
        {
        case 1:
        {
            n=readscore(xuehao,score);
            paixuchengji(xuehao,score,rank,n);
            printf("%d\n",n);
            break;
        }
        case 2:
        {
            total=add(score,n);
            aver=total/n;
            printf("total:%f\naver:%f\n",total,aver);
//语句作用:计算、输出课程总分和平均分
            break;
        }
        case 3:
        {
            printf("by score\n");
            paixuchengji(xuehao,score,rank,n);
            write(xuehao,score,rank,n);
            break;
        }
        case 4:
        {
            paixuxuehao(xuehao,score,rank,n);
            printf("by xuehao\n");
            write(xuehao,score,rank,n);
            break;
        }
        case 5:
        {
            search(xuehao,score,rank,n);
            break;
        }
        case 6:
        {
            sortt(score,sort,n);
            break;
        }
        case 7:
        {

            printf("by score\n");
            write(xuehao,score,rank,n);
            printf("total:%f\naver:%f\n",total,aver);
            break;
        }
        }

    }
    while(choose!=8);
    return 0;
}


int readscore(long xuehao[],float score[])
{
    int students,i=0;
    printf("student number:");
    scanf("%d",&students);
    for(i=0; i<students; i++)
    {
        printf("xuehao and score:");
        scanf("%ld,%f",&xuehao[i],&score[i]);
        getchar();
    }
    return students;
}


float add(float score[],int n)
{
    int i=0;
    float total=0;
    for(i=0; i<n; i++)
    {
        total+=score[i];
    }
    return total;
}


void paixuchengji(long xuehao[],float score[],int rank[],int n)
{
    int i=0,j=0;
    long tempx;
    float temps;
    for(j=0; j<n-1; j++)
    {
        for(i=0; i<n-1-j; i++)
        {
            if(score[i]<score[i+1])
            {
                temps=score[i];
                score[i]=score[i+1];
                score[i+1]=temps;
                tempx=xuehao[i];
                xuehao[i]=xuehao[i+1];
                xuehao[i+1]=tempx;
            }
        }
    }
    for(i=0; i<n; i++)
        rank[i]=i+1;
}

void paixuxuehao(long xuehao[],float score[],int rank[],int n)
{
    int i=0,j=0,tempr;
    long tempx;
    float temps;
    for(j=0; j<n-1; j++)
    {
        for(i=0; i<n-1-j; i++)
        {
            if(xuehao[i]>xuehao[i+1])
            {
                temps=score[i];
                score[i]=score[i+1];
                score[i+1]=temps;
                tempx=xuehao[i];
                xuehao[i]=xuehao[i+1];
                xuehao[i+1]=tempx;
                tempr=rank[i];
                rank[i]=rank[i+1];
                rank[i+1]=tempr;
            }
        }
    }
}


void write(long xuehao[],float score[],int rank[],int n)
{
    int i=0;
    for(i=0; i<n; i++)
        printf("xuehao:%ld,score:%f,rank:%d\n",xuehao[i],score[i],rank[i]);
}

void sortt(float score[],int sort[],int n)
{
    int i=0;
    sort[0]=sort[1]=sort[2]=sort[3]=sort[4]=0;
    for(i=0; i<n; i++)
    {
        if(score[i]>=90)
            sort[0]++;
        else if(score[i]>=80)
            sort[1]++;
        else if(score[i]>=70)
            sort[2]++;
        else if(score[i]>=60)
            sort[3]++;
        else
            sort[4]++;
    }
    printf("youxiu   :%d,rate:%f\n",sort[0],sort[0]/(float)n);
    printf("lianghao :%d,rate:%f\n",sort[1],sort[1]/(float)n);
    printf("zhongdeng:%d,rate:%f\n",sort[2],sort[2]/(float)n);
    printf("jige     :%d,rate:%f\n",sort[3],sort[3]/(float)n);
    printf("bujige   :%d,rate:%f\n",sort[4],sort[4]/(float)n);
}


void search(long xuehao[],float score[],int rank[],int n)
{
    int i,w=0;
    long l;
    printf("xuehao:");
    scanf("%ld",&l);
    for(i=0; i<n; i++)
    {
        if(xuehao[i]==l)
            w=i;
    }
    if(w==0)
        printf("NOT FOUND!\n");
    else
        printf("score:%f,rank:%d\n",score[w],rank[w]);
}

实验五

考试。

实验六

点击查看实验内容
1.学生成绩管理系统V2.0
学生成绩管理系统是一个非常实用的程序,如果能够把用户输入的数据存盘,下次运行时读出,就更有用了。
某班有最多不超过40人(具体人数由键盘输入)参加期末考试,考试科目为数学(MT)、英语(EN)和物理(PH)。利用结构体编程实现如下菜单驱动的学生成绩管理系统:
(1)录入每个学生的学号、姓名和各科考试成绩;
(2)计算每个学生的总分和平均分;
(3)按每个学生的总分由低到高排出名次表;
(4)按姓名的字典顺序排出成绩表;
(5)按姓名查询学生排名及其考试成绩;
(6)将每个学生的记录信息写入文件,包括每个学生的学号、姓名,各科考试成绩,以及其总分与平均分;
(7)从文件中读出每个学生的记录信息并显示。
要求程序运行后先显示如下菜单,并提示用户输入选项:
1.Append record
2.Caculate total and average score of every student
3.Sort in ascending order by total score of every student
4.Sort in dictionary order by name
5.Search by name
6.Write to a file
7.Read from a file
0.Exit
Please enter your choice:
然后,根据用户输入的选项执行相应的操作。
点击查看代码
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

typedef struct student
{
    long id;
    char name[10];
    int scoremt;
    int scoreen;
    int scoreph;
    int total;
    float ave;
} STUDENT;

void write_menu();
int read_information(STUDENT *pt);
void calculate_total_and_average(STUDENT *pt,int n);
void sort_by_score(STUDENT *pt,int n);
void sort_by_name(STUDENT *pt,int n);
void write_information(STUDENT *pt,int n);
void search_by_name(STUDENT *pt,int n);
void write_to_file(STUDENT *pt,int n);
void file_to_screen(STUDENT *pt,int n);

int main()
{
    int choice,student_number;
    STUDENT stu[40];
    STUDENT *ps=stu;
    write_menu();
    do
    {
        printf("Please enter your choice:");
        scanf("%d",&choice);
        switch(choice)
        {
        case 1:
        {
            student_number=read_information(ps);
            break;
        }
        case 2:
        {
            calculate_total_and_average(ps,student_number);
            break;
        }
        case 3:
        {
            sort_by_score(ps,student_number);
            write_information(ps,student_number);
            break;
        }
        case 4:
        {
            sort_by_name(ps,student_number);
            write_information(ps,student_number);
            break;
        }
        case 5:
        {
            sort_by_score(ps,student_number);
            search_by_name(ps,student_number);
            break;
        }
        case 6:
        {
            write_to_file(ps,student_number);
            break;
        }
        case 7:
        {
            file_to_screen(ps,student_number);
            write_information(ps,student_number);
            break;
        }
        case 9:
        {
            write_information(ps,student_number);
            break;
        }
        }
    }
    while(choice!=0);
    return 0;
}

void write_menu()
{
    printf("1.Append record\n");
    printf("2.Caculate total and average score of every student\n");
    printf("3.Sort in ascending order by total score of every student\n");
    printf("4.Sort in dictionary order by name\n");
    printf("5.Search by name\n");
    printf("6.Write to a file\n");
    printf("7.Read from a file\n");
    printf("0.Exit\n");
}

int read_information(STUDENT *pt)
{
    int n,i;
    printf("How many students?\n");
    scanf("%d",&n);
    for(i=0; i<n; i++)
    {
        printf("For student %d\n",i+1);
        printf("input id:");
        scanf("%ld",&(*pt).id);
        printf("input name:");
        scanf("%s",&(*pt).name);
        printf("input score math,English,physics:");
        scanf("%d,%d,%d",&(*pt).scoremt,&(*pt).scoreen,&(*pt).scoreph);
        pt++;
    }
    return n;
}

void calculate_total_and_average(STUDENT *pt,int n)
{
    int i;
    for(i=0; i<n; i++)
    {
        (*pt).total=(*pt).scoremt+(*pt).scoreen+(*pt).scoreph;
        (*pt).ave=(*pt).total/3.0;
        pt++;
    }
}

void sort_by_score(STUDENT *pt,int n)
{
    STUDENT temp;
    int i,j,ji;
    for(i=0; i<n-1; i++)
    {
        ji=i;
        for(j=i+1; j<n; j++)
        {
            if((*(pt+ji)).total<(*(pt+j)).total)
                ji=j;
        }
        temp=(*(pt+i));
        (*(pt+i))=(*(pt+ji));
        (*(pt+ji))=temp;
    }
}

void sort_by_name(STUDENT *pt,int n)
{
    STUDENT temp;
    int i,j,ji;
    for(i=0; i<n-1; i++)
    {
        ji=i;
        for(j=i+1; j<n; j++)
        {
            if(strcmp((*(pt+ji)).name,(*(pt+j)).name)>0)
                ji=j;
        }
        temp=(*(pt+i));
        (*(pt+i))=(*(pt+ji));
        (*(pt+ji))=temp;
    }
}

void write_information(STUDENT *pt,int n)
{
    int i;
    for(i=0; i<n; i++)
    {
        printf("student %d:",i+1);
        printf("id:%ld,name:%s,",(*pt).id,(*pt).name);
        printf("math:%d,English:%d,physics:%d,",(*pt).scoremt,(*pt).scoreen,(*pt).scoreph);
        printf("total:%d,average:%f\n",(*pt).total,(*pt).ave);
        pt++;
    }
}

void search_by_name(STUDENT *pt,int n)
{
    char searchname[10];
    int i,ji=-1;
    printf("name:");
    scanf("%s",&searchname);
    for(i=0; i<n; i++)
    {
        if(strcmp((*(pt+i)).name,searchname)==0)
        {
            ji=i;
            pt+=i;
            printf("student %d:",i+1);
            printf("id:%ld,name:%s,",(*pt).id,(*pt).name);
            printf("math:%d,English:%d,physics:%d,",(*pt).scoremt,(*pt).scoreen,(*pt).scoreph);
            printf("total:%d,average:%f,",(*pt).total,(*pt).ave);
            printf("rank:%d\n",i+1);
        }
    }
    if(ji==-1)
        printf("NOT FOUND!\n");
}

void write_to_file(STUDENT *pt,int n)
{
    FILE *fp;
    if((fp=fopen("student.txt","w"))==NULL)
    {
        printf("Failure to open student.txt!\n");
        exit(0);
    }
    fwrite(pt,sizeof(STUDENT),n,fp);
    fclose(fp);
}

void file_to_screen(STUDENT *pt,int n)
{
    int i;
    FILE *fp;
    if((fp=fopen("student.txt","r"))==NULL)
    {
        printf("Failure to open student.txt!\n");
        exit(0);
    }
    for(i=0; i<n; i++)
    {
        fread(pt+i,sizeof(STUDENT),1,fp);
    }
    fclose(fp);
}

实验七

点击查看实验内容

实验八

点击查看实验内容

关于第1周作业的整体评价

一部分问题问到了核心,一部分则有点偏,问的只是一个小点。

回答第1周作业中提出的问题

第1章

计算系统具体分为哪几个层次,分别有何作用。

按照从内到外的顺序,可以分为信息层、硬件层、程序设计层、应用层、通信层。

信息层反映了在计算机上表示信息的方式。

硬件层是计算机系统的物理硬件。

程序设计层负责处理软件、用于实现计算的指令以及管理数据。

操作系统管理计算机的资源。

应用层能使计算机解决实际问题。

计算机被连接到网络上,能共享信息和资源。

第2章

1.如何实现不同进制(如二进制和十进制)之间的换算。

十到n:多次除以n,余数倒着写。

n到十:从个位开始往左数,第k位乘上n^(k-1),加起来。

2.二进制数值和计算机有什么关系。

现代计算机都是二进制机器,所有信息都是用二进制数值表示的。

第3章

1.如何实现数据(如文本、图像、音视频)的表示。

文本:ASCII码,Unicoe字符集。

图像:RGB值。

2.文本压缩的原理是什么。

关键字压缩:对常用单词进行替换,如 the → ~ 。缺点:需要替换字符在原文档中未被使用;常用单词一般较短。

行程长度编码:将长的相同字符按规则替换,如 AAAAA → *A5 。特殊地,如果末尾‘5’是ASCII码,即十进制的53,那就可以替换很长的相同字符。

赫夫曼编码:变长编码,常用的字符编码短,不常用的长。特点:从左往右读,发现对应的位串对应一个字符,那就一定表示它。

第4章

1.门的分类,各自的作用是什么。

非门(NOT):X=A',求逆。也称逆变器。

A X
0 1
1 0

与门(AND):X=A·B,交集,两真才真。

A B X
0 0 0
0 1 0
1 0 0
1 1 1

或门(OR):X=A+B,并集,有真则真。

A B X
0 0 0
0 1 1
1 0 1
1 1 1

异或门(XOR):X=A⊕B,同假异真。

A B X
0 0 0
0 1 1
1 0 1
1 1 0

与非门(NAND):X=(A·B)',先与后非。

A B X
0 0 1
0 1 1
1 0 1
1 1 0

或非门(NOR):X=(A+B)',先或后非。

A B X
0 0 1
0 1 0
1 0 0
1 1 0

2.电路的作用。

电路是由多个连接在一起的电子元件组成的系统。它可以接受输入信号,并通过逻辑门和其他电子元件的组合来处理和操作这些信号,最终产生输出信号。电路可以是简单的逻辑门电路,也可以是复杂的处理器或存储器等。

第5章

计算部件具体有哪些,如何起作用。

冯·诺依曼体系结构:

第6章

低级程序设计语言、伪代码的基本语句有哪些。

低级程序设计语言:

伪代码:

第7章

1.解决问题如何选择合适的算法。

提出问题,寻找熟悉的情况,分治法,算法。

2.算法设计的进阶操作(如变量、搜索、排序、递归)。

变量:数组,记录。

搜索:顺序搜索,二分搜索。

排序:选择排序,冒泡排序,插入排序。

递归:算法调用它本身。

第8章

1.抽象数据类型及其适用条件、优势、限制。

抽象数据类型:属性(数据和操作)明确地与特定实现分离的容器。

栈:后进先出。

队列:先进先出。

列表:链式结构。

树:节点,分层。

图:节点,互相连接。

2.子程序的概念、作用。

子程序:子算法。

第9章

面向对象设计的流程、方法。

头脑风暴,过滤,场景,责任算法,总结。

第10章

操作系统实现操作的方法。

进程管理,内存管理,文件系统,设备管理,用户界面。

第11章

1.文本文件、二进制文件的分类方法、区别。

区分:文件格式,存储方式,可读性,大小,兼容性。

区别:

1.文本文件包含可读的文本内容,而二进制文件可以包含任意类型的数据。

2.文本文件以字符为单位存储数据,而二进制文件以字节为单位存储数据。

3.文本文件可以直接被人类阅读和编辑,而二进制文件需要特定的应用程序进行解析和处理。

4.文本文件具有较高的兼容性,而二进制文件的兼容性较低。

5.文本文件相对较小,而二进制文件的大小可能更大。

2.磁盘调度的概念、作用。

概念:决定先满足哪个磁盘I/O请求的操作。

作用:调度算法,请求队列管理,预读和预写。

第12章

信息管理的方法,数据库的原理。

信息管理的方法:电子表格、数据库管理系统和电子商务。

数据库的原理:数据库是结构化的数据集合。

第13章

人工智能的发展历程、现处阶段、未来方向。

1956年,美国计算机科学家约翰·麦卡锡等人提出了“人工智能”这个概念,标志着人工智能的诞生。随后,人工智能的研究开始蓬勃发展,涌现出了许多经典的算法和技术,如专家系统、神经网络、决策树、遗传算法等。20世纪90年代以来,人工智能的研究陷入了低谷期。但是,随着大数据、云计算、物联网等技术的兴起,人工智能又重新进入了高潮期。2010年左右,深度学习技术的突破使得人工智能实现了重大的发展,并在图像识别、语音识别、自然语言处理等领域取得了巨大的成就。

当前,人工智能正处于快速发展阶段。人工智能在各行各业的应用越来越广泛,如自动驾驶、智能客服、智能家居、智慧医疗等。同时,人工智能也面临着许多挑战,如数据安全、算法透明度、伦理道德等问题。

未来,人工智能的发展方向主要有以下几个方面:智能化,可靠性,创新性。

第14章

1.模拟的原理。

设计复杂系统的模型并为观察结果而对该模型进行实验。

2.游戏的设计和开发。

设计决策,游戏编程。

第15章

连接网络的原理、注意事项、安全性。

原理:网络接入,IP地址分配,域名解析,数据传输。

注意事项:防火墙和安全软件,强密码和多因素身份验证,谨慎点击链接和下载,定期更新系统和应用程序。

安全性:加密通信,防火墙和入侵检测系统,定期备份数据。

第16章

网页后缀代表的含义。

网页后缀代表了网页的文件类型或所属的组织/国家。

常见的网页后缀:

  1. .com:商业性质的网站,通常用于表示公司、企业或商业机构。

  2. .org:非营利组织的网站,如慈善机构、教育机构等。

  3. .edu:教育机构的网站,如大学、学院等。

  4. .gov:政府机构的网站,用于表示政府部门或政府组织。

  5. .net:网络服务提供商的网站,也可用于其他类型的网站。

  6. .mil:军事机构的网站,用于表示军方相关组织。

  7. .cn:中国的域名后缀,表示属于中国的网站。

  8. .jp:日本的域名后缀,表示属于日本的网站。

  9. .uk:英国的域名后缀,表示属于英国的网站。

  10. .de:德国的域名后缀,表示属于德国的网站。

  11. .html或.htm:HTML格式的网页文件。

  12. .php:PHP脚本文件,在服务器端执行并生成动态内容的网页。

  13. .pdf:Adobe Acrobat格式的文档文件,通常用于展示电子书籍、报告等。

  14. .jpg或.jpeg:JPEG图像文件格式。

  15. .png:PNG图像文件格式,支持透明背景。

第17章

1.如何保障计算机的安全。

例如,防火墙和安全软件,强密码和多因素身份验证,谨慎点击链接和下载,定期更新系统和应用程序。

2.如何保证密码的安全性。

例如,使用强密码,避免重复使用密码,定期更改密码,启用多因素身份验证,不要在公共场所输入密码。

第18章

计算目前仍存在的各种限制和问题。

硬件、软件和要解决的问题自身都对计算机的问题求解有限制。

课程收获与不足

在本课程中,我了解了计算机基础,理解了硬件、软件层面的知识。此外,我还学会了C语言基础,会了一定的语法,相信这对我学习Python,Java等其他计算机语言有很大帮助。

平时,我投入到本课程的时间还不够多,效率还不够高。以后学习一门课程时,要敢于多投入时间,致力于提高效率。

给开学初的你和学弟学妹们的学习建议

1.认真学习,多看教材,善于思考,多多提问。

2.注重实践,不要畏难,大胆尝试,勤加练习。

3.关于Linux和命令,一开始确实会有点一头雾水,但是,只要明确它和Windows类似,是一种操作系统;再多理解终端里的命令,自己手动去实践,还是能弄懂的。

问卷调查

问题 回答
你平均每周投入到本课程多长时间? 课上,4h;课下,有实验10h,无实验5h
每周的学习效率有提高吗? 效率一开始不算高,慢慢地,确实有一定的提升
学习效果自己满意吗? 效果还算满意,学习到了很多内容,但是也还有很多不足
课程结束后会继续一周至少一篇博客吗? 现在很难说,我尽量坚持吧
你觉得这门课老师应该继续做哪一件事情? 讲课时结合实际例子进行演示讲解
你觉得这门课老师应该停止做哪一件事情? 讲课初期应该考虑到同学们的水平,不要讲得太快或者太简略
你觉得这门课老师应该开始做什么新的事情? 考虑同学们的水平,推荐一些适合入门小白看的相关书籍

本文链接和二维码

本文链接:

https://www.cnblogs.com/eleslsel/p/17946209.html

二维码:

posted @ 2024-01-04 22:35  20231420  阅读(17)  评论(0编辑  收藏  举报