C语言程序设计

C语言程序设计,第1张

#include <stdioh>

#include <stdlibh>

#include <stringh>

#define MAX_NUM 50

#define MAX_LINE 256

struct student {

    char name[10];

    float math;

    float chinese;

    float eng;

    float aver;

    char  grade;

};

const char  student_file = "studenttxt";

const char  grade_file   = "gradetxt";

int init(struct student  s, int n);

int fun(struct student s[], int n);

void sort(struct student  s, int n);

void display(struct student  s, int n);

void save_student(struct student  s, int n, const char  file);

void load_student(const char  file);

int main(int argc, char argv[])

{

    int num = 0;

    struct student st[MAX_NUM];

    num = init(st, MAX_NUM);

    printf("\n等级为D的人数: %d\n", fun(st, num));

    save_student(st, num, student_file);

    sort(st, num);

    save_student(st, num, grade_file);

    display(st, num);

    printf("\n所有学生信息\n");

    load_student(student_file);

    printf("\n排序后的学生信息\n");

    load_student(grade_file);

    return 0;

}

/ 初始化 /

int init(struct student  s, int n)

{

    int num = 0, i = 0;

    if (0 == s || 0 >= n || MAX_NUM < n)

        return 0;

    printf("请输入学生数量[不大于50]: ");

    fflush(stdout);

    scanf("%d", &num);

    while (0 >= num || n < num)

    {

        fflush(stdin);

        printf("无效的参数,请输入学生数量[不大于50]: ");

        fflush(stdout);

        scanf("%d", &num);

    }

    for (i = 0; i < num; ++i)

    {

        printf("请输入第%d个学生的信息: ", i + 1);

        fflush(stdout);

        scanf("%9s %f %f %f", s[i]name, &s[i]math, &s[i]chinese, &s[i]eng);

        fflush(stdin);

    }

    return num;

}

/ 计算平均成绩并统计等级为D的人数 /

int fun(struct student s[], int n)

{

    int i = 0, cnt = 0;

    if (0 == s || 0 >= n || MAX_NUM < n)

        return 0;

    for (i = 0; i < n; ++i)

    {

        s[i]aver = (s[i]math + s[i]chinese + s[i]eng) / 30;

        if (70 <= s[i]aver && 85 > s[i]aver)

            s[i]grade = 'B';

        else if (60 <= s[i]aver && 70 > s[i]aver)

            s[i]grade = 'C';

        else if (60 > s[i]aver)

            s[i]grade = 'D';

        else

            s[i]grade = 'A';

        if ('D' == s[i]grade)

            ++cnt;

    }

    return cnt;

}

/ 降序排列 /

void sort(struct student  s, int n)

{

    int i = 0, j = 0;

    struct student tmp;

    if (0 == s || 0 >= n || MAX_NUM < n)

        return 0;

    for (i = 0; i < n - 1; ++i)

    {

        for (j = 0; j < n - 1 - i; ++j)

        {

            if (s[j]aver < s[j + 1]aver)

            {

                tmp = s[j];

                s[j] = s[j + 1];

                s[j + 1] = tmp;

            }

        }

    }

}

void display(struct student  s, int n)

{

    int i = 0;

    if (0 == s || 0 >= n || MAX_NUM < n)

        return 0;

    printf("所有学生的信息如下: \n");

    for (i = 0; i != n; ++i)

    {

        printf("%d name[%s] math[%1f] chinese[%1f] eng[%1f] aver[%1f] grade[%c]\n",

               i + 1, s[i]name, s[i]math, s[i]chinese, s[i]eng, s[i]aver, s[i]grade);

    }

}

/ 保存学生信息到指定文件 /

void save_student(struct student  s, int n, const char  file)

{

    int i = 0;

    FILE  fp = 0;

    char buf[MAX_LINE] = {0};

    if (0 == s || 0 >= n || MAX_NUM < n || 0 == file)

        return 0;

    if (fp = fopen(file, "w"))

    {

        for (i = 0; i != n; ++i)

        {

            sprintf(buf, "%s %1f %1f %1f %1f %c\r\n",

                    s[i]name, s[i]math, s[i]chinese, s[i]eng, s[i]aver, s[i]grade);

            fwrite(buf, 1, strlen(buf), fp);

            memset(buf, 0x00, MAX_LINE);

        }

        fclose(fp);

    }

}

/ 加载指定文件中的信息 /

void load_student(const char  file)

{

    char buf[MAX_LINE] = {0};

    FILE  fp = 0;

    if (0 == file)

        return ;

    if (fp = fopen(file, "r"))

    {

        while (fgets(buf, MAX_LINE, fp))

            printf("%s", buf);

        fclose(fp);

    }

}

语言程序开发的步骤

1

定义程序目标。在开始写程序之前,应对希望程序要做什么有一个清晰的想法。考虑程序需要的信息,程序需要进行的计算和 *** 作

2

设计程序。在对程序需要完成的事情有一个概念性的认识后,就应该决定程序要如何完成它,用户界面应该是怎么样的,程序应该如何组织

3

编写代码。在程序有了清晰的设计后,就可以通过编写代码来实现它了。也就是说,将设计构思转变为C语言。一般来说

4

编译源代码。编译细节取决于编程环境,编译器还检查程序是否为有效的C语言程序。

C语言是古老而长青的编程语言,它具备了现代程序设计的基础要求,它的语法是很多其他编程语言的基础,在系统程序、嵌入式系统等领域依然是无可替代的编程语言,在各类编程语言排行榜上常年占据前两名的位置。

程序设计是一门基础课程。对于计算机相关专业而言,程序设计是专业基础知识,是进一步学习其他专业知识的第一步阶梯;对于非计算机专业而言,程序设计的学习有助于理解计算机的能力所在,理解哪些是计算机擅长解决的问题,怎样的方式方法是计算机擅长的手段,从而能更好地利用计算机来解决本专业领域内的问题。

C是一种计算机编程语言。就是说可以用C编写指令清单交给计算机去执行。C是当前正在使用的成千上万种编程语言之一。它已经有几十年的历史了。因为它功能强大而且效率很高,所以受到了程序员们广泛的欢迎。

C是所谓的编译型语言,意思是说您写好的源程序必须通过C编译器来运行,使它变成可以在计算机上运行(执行)的可执行文件。C源程序是供人阅读的,而编译器产生的可执行程序是供计算机读入和执行的。也就是说,要编写并运行一个C程序,您必须借助于C编译器。如果使用UNIX系统(例如,您在UNIX主机上用C编写CGI脚本,或者您是学生,在实验室的UNIX机器上工作),C编译器是免费提供的。它的名字是cc或者gcc,可以通过命令行调用。

以上就是关于C语言程序设计全部的内容,包括:C语言程序设计、c语言程序设计的基本步骤、C语言程序设计是什么等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/9499363.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-29
下一篇2023-04-29

发表评论

登录后才能评论

评论列表(0条)

    保存