欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

一波C語言字符數(shù)組實用技巧集錦

 更新時間:2016年04月25日 15:47:37   作者:hzy3774  
這篇文章主要介紹了一波C語言字符數(shù)組實用技巧集錦,包括許多字符的轉換與提取等基本操作示例,需要的朋友可以參考下

字符數(shù)組倒序

#include <stdio.h> 

 void daoxu(char str[]){ 
   int i; 
   char temp; 
   for(i = 0; i < strlen(str) / 2 ; i ++){ 
     temp = str[i]; 
     str[i] = str[strlen(str) - i-1]; 
     str[strlen(str) - i-1] = temp; 
   } 
 } 

單詞計數(shù)   

 int wordCount(char str[]){ 
   int i; 
   int count = 0; 
   int word = 0; 
   for (i = 0 ; str[i] != '\0' ; i ++) 
   { 
     if (str[i] == ' ') 
     { 
       word = 0; 
     }else if (word == 0) 
     { 
       word = 1; 
       count ++; 
     } 
   } 
   return count; 
 } 

字符大寫轉小寫

 void mylwr(char str[]){ 
   int i; 
   for (i = 0 ; str[i] != '\0' ; i ++) 
   { 
     if (str[i] >= 'A' && str[i] <= 'Z') 
     { 
       str[i] += 'a' - 'A'; 
     } 
   } 
 } 

字符小寫轉大寫

 void myupr(char str[]){ 
   int i; 
   for (i = 0 ; str[i] != '\0' ; i ++) 
   { 
     if (str[i] >= 'a' && str[i] <= 'z') 
     { 
       str[i] -= 'a' - 'A'; 
     } 
   } 
 } 

字符數(shù)組計算字符串長度   

 int mylen(char str[]){ 
   int len; 
   for (len = 0 ; str[len] != '\0' ; len ++); 
   return len; 
 } 

字符串連接 

 void mycat(char str1[],char str2[]){ 
   int i,j; 
   for (i = 0 ; str1[i] != '\0' ;i++); 
   for (j = 0 ; str2[j] != '\0' ; j ++) 
   { 
     str1[i + j] = str2[j]; 
   } 
   str1[i + j] = '\0'; 
 } 

指定長度串接 

void myncat(char str1[],char str2[], int len){ 
   int i,j; 
   for(i = 0; str1[i] != '\0'; i++); 
   for (j = 0; j < len; j++) 
   { 
     str1[i + j] = str2[j]; 
   } 
   str1[i + j] = '\0'; 
 } 

字符數(shù)組拷貝     

 void mycpy(char dst[],char src[]){ 
   int i = 0; 
   do  
   { 
     dst[i] = src[i]; 
   } while (src[i++] != '\0'); 
 } 

字符數(shù)組指定長度拷貝     

 void myncpy(char dst[],char src[], int len){ 
   int i; 
   for (i = 0; i < len; i++) 
   { 
     dst[i] = src[i]; 
   } 
   dst[i] = '\0'; 
 } 

找出句子中最長的單詞 

 void longest(char dst[],char src[]){ 
   int i = 0,j; 
   int count =0; 
   int max = -1; 
   do  
   { 
     if (src[i] ==' ' || src[i] == '\0') 
     { 
       if (count > max) 
       { 
         max = count; 
         for (j = 0; j < count; j++) 
         { 
           dst[j] = src[i - count + j]; 
         } 
         dst[j] = '\0'; 
       } 
       count = 0; 
     }else{ 
       count++; 
     } 
   } while (src[i++] != '\0'); 
 } 

從字符串中提取整形數(shù)字

#include <stdio.h> 
 
int getint(char str[], int a[]){//從字符串中提取數(shù)字并放在數(shù)組中 
  int i = 0; 
  int w = 0; 
  int c = 0; 
  int j, k; 
  do  
  { 
    if (str[i] > '0' && str[i] <= '9') 
    { 
      w++; 
    }else if (w) 
    { 
      j = 0; 
      for (k = w; k > 0; k--) 
      { 
        j *= 10; 
        j += str[i - k] - '0'; 
      } 
      w = 0; 
      a[c] = j; 
      c++; 
    } 
  } while (str[i++] != '\0'); 
  return c; 
} 
 
void main(){ 
  char str[100]; 
  int a[100]; 
  int i, j; 
  gets(str); 
  i = getint(str,a); 
  for (j = 0; j < i; j++) 
  { 
    printf("%d ",a[j]); 
  } 
} 

整形、字符數(shù)組型轉換

#include <stdio.h> 
#include <stdlib.h> 
 
int sumof1(int x)//求一個數(shù)轉換成二進制以后1的個數(shù) 
{ 
  int countx = 0; 
  while(x) 
  { 
    countx ++; 
    x &= x-1; //每位與一次x - 1;就能消掉最后一個1 
  } 
  return countx; 
} 
 
void main(){ 
 
  char c[10]; 
  int i = 999; 
 
  itoa(i, c, 10);//以10進制轉換成字符數(shù)組 
  puts(c); 
 
  itoa(i, c, 16);//以16進制轉換成字符數(shù)組 
  printf("0x%s\n", c); 
 
  itoa(i, c, 8);//以8進制轉換成字符數(shù)組 
  printf("0%s\n", c); 
 
  itoa(i, c, 2);//以2進制轉換成字符數(shù)組 
  puts(c); 
 
  i = atoi(c);//再將字符串轉成整形 
  printf("%d\n", i); 
 
  printf("%d\n", sumof1(i));//以2進制表示時1的個數(shù) 
} 

2016425154607514.jpg (257×176)

相關文章

  • 一文詳解C++中的類型轉化

    一文詳解C++中的類型轉化

    說起類型轉化,我們在C語言之前的學習中可以了解到,類型轉換可以分為兩種情況:隱式類型轉化;顯示類型轉化。但是為什么在c++中還要繼續(xù)對類型轉化做文章呢?我們一起來看
    2023-04-04
  • C語言使用鏈表實現(xiàn)學生籍貫管理系統(tǒng)

    C語言使用鏈表實現(xiàn)學生籍貫管理系統(tǒng)

    這篇文章主要為大家詳細介紹了C語言使用鏈表實現(xiàn)學生籍貫管理系統(tǒng),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-02-02
  • 使用VC++實現(xiàn)打印乘法口訣表

    使用VC++實現(xiàn)打印乘法口訣表

    本文給大家分享的是一個超級簡單的小例子,使用vc++打印乘法口訣表,給需要的小伙伴參考下吧。
    2015-03-03
  • windows上配置vscode?C/C++代碼跳轉的實現(xiàn)

    windows上配置vscode?C/C++代碼跳轉的實現(xiàn)

    C/C++官方的C/C++插件,必備的插件,是代碼跳轉、自動補全、代碼大綱顯示等功能的基礎,本文主要介紹了windows上配置vscode?C/C++代碼跳轉,感興趣的可以了解一下
    2023-09-09
  • c++??復制消除問題解決示例詳析

    c++??復制消除問題解決示例詳析

    這篇文章主要為大家介紹了c++??復制消除問題解決示例詳析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-08-08
  • C語言 動態(tài)分配數(shù)組案例詳解

    C語言 動態(tài)分配數(shù)組案例詳解

    這篇文章主要介紹了C語言 動態(tài)分配數(shù)組案例詳解,本篇文章通過簡要的案例,講解了該項技術的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下
    2021-08-08
  • 基于Matlab實現(xiàn)抖音小游戲蘋果蛇

    基于Matlab實現(xiàn)抖音小游戲蘋果蛇

    最近抖音上蘋果蛇小游戲大火,為了證明MATLAB無所不能,咋能不跟風做一個?文中詳細講解了游戲的實現(xiàn)步驟,感興趣的小伙伴可以嘗試一下
    2022-06-06
  • C++利用inotify+epoll實現(xiàn)異步文件監(jiān)控的方法

    C++利用inotify+epoll實現(xiàn)異步文件監(jiān)控的方法

    這篇文章講給大家詳細介紹一下C++利用inotify+epoll實現(xiàn)異步文件監(jiān)控的方法,inotify是一種異步文件監(jiān)控機制,文章通過代碼示例介紹的非常詳細,具有一定的參考價值,需要的朋友可以參考下
    2023-08-08
  • Qt如何實現(xiàn)輸入框@聯(lián)系人的@檢測的示例

    Qt如何實現(xiàn)輸入框@聯(lián)系人的@檢測的示例

    本文主要介紹了Qt如何實現(xiàn)輸入框@聯(lián)系人的@檢測的示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2022-08-08
  • C++實現(xiàn)LeetCode(152.求最大子數(shù)組乘積)

    C++實現(xiàn)LeetCode(152.求最大子數(shù)組乘積)

    這篇文章主要介紹了C++實現(xiàn)LeetCode(152.求最大子數(shù)組乘積),本篇文章通過簡要的案例,講解了該項技術的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下
    2021-07-07

最新評論