网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > C/C++
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
本月文章推荐
.Java进阶:JNI使用技巧点滴.
.在C++ Builder6中使用XML.
.在Visual C++中如何利用UDL文件来.
.用C++产生QL*Loader各类文件.
.Visual C++ 入门精解.
.TServerSocket和TClientSocket的.
.exit()子程序终止函数与return().
.C++中类的数据成员的安全隐患.
.C语言入门之基础语句.
.1999年9月基础知识知识和C语言程.
.关于BCB写入文件进行感染的问题.
.函数调用,__stdcall,__cdecl,__f.
.服务器与客户机互传消息.
..
.API之文本和字体函数.
.C++ 虚基类.
.CB编程中动态更改自定义打印纸张.
.监视剪贴板内容.
.程序员眼中的qmail(qmail源代码分.
.AT&T/x86/asm语法.

C程序开发经典实例之8

发表日期:2008-3-8



【程序71】
题目:编写input()和output()函数输入,输出5个学生的数据记录。
1.程序分析:
2.程序源代码:
#define N 5
strUCt student
{
    char num[6];
    char name[8];
    int score[4];
}stu[N];
input(stu)
struct student stu[];
{
    int i, j;
    for(i=0; i<N; i++)
    {
        printf("\n please input %d of %d\n", i+1, N);
        printf("num: ");
        scanf("%s", stu[i].num);
        printf("name: ");
        scanf("%s", stu[i].name);
        for(j=0; j<3; j++)
        {
            printf("score %d.", j+1);
            scanf("%d", &stu[i].score[j]);
        }
        printf("\n");
    }
}
print(stu)
struct student stu[];
{
    int i, j;
    printf("\nNo. Name Sco1 Sco2 Sco3\n");
    for(i=0; i<N; i++)
    {
        printf("%-6s%-10s", stu[i].num, stu[i].name);
        for(j=0;j<3;j++)
            printf("%-8d", stu[i].score[j]);
        printf("\n");
    }
}
main()
{
    input();
    print();
}

【程序72】
题目:创建一个链表。
1.程序分析:
2.程序源代码:
/* creat a list */
#include "stdlib.h"
#include "stdio.h"
struct list
{
    int data;
    struct list *next;
};
/* 欢迎访问 C++Builder研究 - www.ccrun.com */
typedef struct list node;
typedef node *link;
void main()
{
    link ptr, head;
    int num, i;
    ptr = (link)malloc(sizeof(node));
    ptr = head;
    printf("please input 5 numbers==>\n");

    for(i=0; i<=4; i++)
    {
        scanf("%d", &num);
        ptr->data = num;
        ptr->next = (link)malloc(sizeof(node));
        if(i==4) ptr->next = NULL;
        else ptr = ptr->next;
    }
    ptr = head;
    while(ptr != NULL)
    {
        printf("The value is ==>%d\n", ptr->data);
        tr = ptr->next;
    }
}

【程序73】
题目:反向输出一个链表。
1.程序分析:
2.程序源代码:
/*reverse output a list*/
#include "stdlib.h"
#include "stdio.h"
struct list
{
    int data;
    struct list *next;
};
typedef struct list node;
typedef node *link;
void main()
{
    link ptr, head, tail;
    int num, i;
    tail = (link)malloc(sizeof(node));
    tail->next = NULL;
    ptr = tail;
    printf("\nplease input 5 data==>\n");
    for(i=0; i<=4; i++)
    {
        scanf("%d", &num);
        ptr->data = num;
        head = (link)malloc(sizeof(node));
        head->next = ptr;
        ptr = head;
    }
    ptr = ptr->next;
    while(ptr != NULL)
    {
        printf("The value is ==>%d\n", ptr->data);
        ptr = ptr->next;
    }
}

【程序74】
题目:连接两个链表。
1.程序分析:
2.程序源代码:
#include "stdlib.h"
#include "stdio.h"
struct list
{
    int data;
    struct list *next;
};
typedef struct list node;
typedef node *link;
link delete_node(link pointer, link tmp)
{
    if(tmp == NULL) /* delete first node */
        return pointer->next;

    else
    {
        if(tmp->next->next == NULL) /* delete last node */
            tmp->next = NULL;
        else /* delete the other node */
            tmp->next = tmp->next->next;
        return pointer;
    }
}
void selection_sort(link pointer, int num)
{
    link tmp, BTmp;
    int i, min;
    for(i=0; i<num; i++)
    {
        tmp = pointer;
        min = tmp->data;
        btmp = NULL;
        while(tmp->next)
        {
            if(min > tmp->next->data)
            {
                min = tmp->next->data;
                btmp = tmp;
            }
            tmp = tmp->next;
        }
        printf("\40: %d\n", min);
        pointer = delete_node(pointer, btmp);
    }
}
link create_list(int array[], int num)
{
    link tmp1, tmp2, pointer;
    int i;
    pointer = (link)malloc(sizeof(node));
    pointer->data = array[0];
    tmp1 = pointer;
    for(i=1; i<num; i++)
    {
        tmp2 = (link)malloc(sizeof(node));
        tmp2->next =&
上一篇:C程序设计例解(03) 人气:425
下一篇:C程序设计语言概论(2) 人气:413
浏览全部C/C++的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐