zoukankan      html  css  js  c++  java
  • c语言----程序记录

    1.结构体写入文件,读取

    #include <stdio.h>
    #include <string.h>
    #include <stdlib.h> 
    #define max 5
    
    struct books{
        char title[20];
        char author[20];
        int price;
    };
    
    const char * fileName="books.txt";
    int size=sizeof(struct books);
    
    void read(struct books bks[]);
    void write(struct books bks[]);
    void list(struct books bks[]);
    void demo(struct books bks[]);
    
    void main(void)
    {
        struct books bks[max];
        
        //write(bks);
        read(bks);
    
    }
    
    
    void write(struct books bks[])
    {
        FILE * fp;
        int i=0;
        int addList;
        if((fp=fopen(fileName,"a+b")) == NULL)
        {
            printf("file open fail"); 
        }
        
        puts("大侠,你想添加几条数据?");
        scanf("%d",&addList);
        
        if(addList>0)
        {
            do{
                printf("please add new book title
    ");
                scanf("%s",&bks[i].title);
                printf("please add new book author
    ");
                scanf("%s",&bks[i].author);
                printf("please add new book price
    ");
                scanf("%d",&bks[i].price);
                i++;
                fwrite(&bks[i],size,1,fp);
            }while(i<addList);
        }
                        
    }
    
    void read(struct books bks[])
    {
        FILE * fp;
        int i=0;
        if((fp=fopen(fileName,"r+")) == NULL)
        {
            printf("file open fail"); 
        }
        
        rewind(fp);
        
        while( i<max && fread(&bks[i],size,1,fp) == 1)
        {
            printf("title is %s,author is %s,price is %d
    ",bks[i].title,bks[i].author,bks[i].price);
            i++;
        }
            
    }

     2. 获取指定字符在字符串的最后的位置

      

     1 #include <string.h>
     2 #include <stdio.h>
     3 #include <stdlib.h>
     4 
     5 int main(int argc,char *argv[])
     6 {
     7     if(argc<2)
     8     {
     9         puts("params error");
    10         exit(1);
    11     }
    12      
    13    char *p;
    14    char c = argv[2][0];  //传入来的都是字符串,得到需要的字符 ,去掉最后的 
    15    int weizhi;
    16    
    17    p = strrchr(argv[1],c);//得到字符c在字符串argv[1]中的地址,返回的是字符指针 
    18    
    19    if(p)
    20      weizhi = p - argv[1];  //两个指针相减,得到位置距离 
    21         printf("%d",weizhi);
    22    else
    23      puts("not found");   
    24    
    25    return 0;
    26 }

    3.字符串查找

     1 #include <string.h>
     2 #include <stdio.h>
     3 #include <stdlib.h>
     4 #define TRUE   1
     5 #define FALSE  0 
     6 #define ERROR  0
     7 
     8 int strStart(char *,char *);
     9 
    10 int main(int argc,char *argv[])
    11 {
    12      char message[]="hello,welcome to China"; 
    13      char find[]="Ch";
    14      int start = strStart(message,find);
    15      printf("%d",start);
    16 }
    17 
    18 int strStart(char * String,char * find)
    19 {
    20     int start=-1,i=0,j=0;
    21     
    22     //得到字符串长度 
    23     int StringLen = strlen(String);
    24     int findLen   = strlen(find);
    25     //判断是否为空
    26     if(StringLen<=0 || findLen<=0)
    27     {
    28         return FALSE;
    29     }
    30     //判断子串的长度是否大于母串的长度
    31     if(StringLen < findLen)
    32     {
    33         return FALSE;
    34     } 
    35     //开始查找 
    36     for(i=0;i<=StringLen;i++)
    37     {
    38         if(String[i]==find[j])
    39         {
    40             if(start<0)
    41                 start = i;
    42             
    43             j++;    
    44         }else{
    45             if(j<findLen)
    46                 start=-1;
    47         }
    48     }
    49     return start;
    50 }
  • 相关阅读:
    网站的内容安全策略(CSP)
    javascript学习日记--eval、prompt
    【java每日一学】Applet类详解
    JavaScript 闭包应用-打印所有li元素的内容
    JavaScript 闭包应用-计算打车价格
    JavaScript 闭包应用-点击li输出索引号
    JavaScript jQuery 任务清单 ToDoList
    JavaScript 面向对象TAB栏切换
    JavaScript 常见移动端网页特效
    JavaScript 移动端轮播图
  • 原文地址:https://www.cnblogs.com/hanyouchun/p/4079124.html
Copyright © 2011-2022 走看看