• JavaDailyReports10_12


    运算级自增自减运算符大于取值运算符*,大于取地址运算符!

     1 #include<stdio.h>
     2 #include<string.h>
     3 #define OK 1
     4 #define ERROR 0
     5 typedef char ElemType;
     6 typedef int Status;
     7 typedef struct Stack1
     8 {
     9     ElemType data;
    10     struct Stack1 *next;
    11 }Stack1,*SqlStack1;
    12 //初始化一个栈 
    13 Status Init(SqlStack1 &L)
    14 {
    15     L->next=NULL;
    16     return 0;
    17 }
    18 //进栈操作 
    19 Status In(SqlStack1 &L,ElemType e)
    20 {
    21     SqlStack1 p;
    22     p=new Stack1;
    23     p->data=e;
    24     p->next=L;
    25     L=p;
    26     return OK;    
    27 }
    28 //出栈操作 
    29 ElemType Out(SqlStack1 &L)
    30 {
    31     ElemType r;
    32     r=L->data;
    33     L=L->next;
    34     return r;
    35 }
    36 int main()
    37 {
    38     SqlStack1 L;
    39     int s_length;
    40     int result=0;
    41     L=new Stack1;
    42     char s[20];
    43     ElemType c1,c2;
    44     printf("请输入想要判断的字符串:");
    45     scanf("%s",&s);
    46     s_length=strlen(s);          //取得要判断的字符串长度 
    47     //进栈操作 
    48     for(int k=1;k<=s_length/2;k++)
    49     {
    50         In(L,s[k-1]);
    51     }
    52     if(s_length%2==0)              //判断字符串长度是奇数还是偶数 
    53     {
    54         for(int i=1;i<=s_length/2;i++)
    55         {
    56             c1=Out(L);
    57             c2=s[s_length/2+i-1];          
    58             if(c1==c2)                         //进行判断 
    59             {
    60                 result=1;
    61                 continue;
    62             }
    63             else
    64             {
    65                 result=0;
    66                 break;
    67             }
    68         }
    69     }
    70     else
    71     {
    72         for(int j=1;j<=s_length/2;j++)
    73         {
    74             c1=Out(L);
    75             c2=s[s_length/2+j];          
    76             if(c1==c2)                     //进行判断
    77             {
    78                 result=1;
    79                 continue;
    80             }
    81             else
    82             {
    83                 result=0;
    84                 break;
    85             }
    86         }
    87     }
    88     //输出操作 
    89     if(result==1)
    90     {
    91         printf("该字符串是回文字符串!");
    92     }
    93     else
    94     {
    95         printf("该字符串不是回文字符串!");
    96     }
    97     return 0;        
    98 }
  • 相关阅读:
    Windows各种计时器
    C++:数据流和缓冲区
    CImage类的使用介绍!
    PCL:PCL可视化显示点云
    Qt:&OpenCV—Q图像处理基本操作(Code)
    Boost锁~临界区保护和临界资源共享
    关于XML学习
    Eigen库对齐问题:declspec(align('16')) 的形参将不被对齐
    boost多线程使用简例
    一个openMP编程处理图像的示例
  • 原文地址:https://www.cnblogs.com/rainbow-1/p/13805569.html
Copyright © 2020-2023  润新知