1. 程式人生 > >【C語言】實現一個函式翻轉字串

【C語言】實現一個函式翻轉字串

實現一個函式翻轉字串

思路:->實現翻轉
1.翻轉即前後交換
2.對於字串前後交換直到中間一個字元終止迴圈
3.令(start++)<(end–)迴圈條件不滿足退出

#include<stdio.h>
int main()
{
    char * reverse(char*string);
    char string[] = "Hello,world!";
    reverse(string);
    puts(string);
    getchar();
    return 0;
}
//實現字串的翻轉
char * reverse(char* string
) { char tempt; int count = 0; int i = 0, j = 0; while (string[i++]) { count++; //(不呼叫庫函式)共有n個字元 } i = 0; //注意:i經過遞增後數值已經發生改變 給i重新賦0 j = count - 1; while(i < j) { tempt = string[i]; string[i] = string[j]; string[j] = tempt; i++; j--; } return
string; }

這裡寫圖片描述

惜不吝賜教!

相關推薦

C語言實現一個函式翻轉字串

實現一個函式翻轉字串 思路:->實現翻轉 1.翻轉即前後交換 2.對於字串前後交換直到中間一個字元終止迴圈 3.令(start++)<(end–)迴圈條件不滿足退出 #incl

C語言實現一個函式,可以左旋字串中的k個字元。

.實現一個函式,可以左旋字串中的k個字元。 AABCD左旋一個字元得到ABCDA AABCD左旋兩個字元得到BCDAA 思路: 1.如果直接進行左移,肯定會存在陣列前面的元素丟失。 解決辦法:

C語言編寫一個函式實現兩個數的交換 詳細解答

今天在用函式寫兩數交換的時候發現有點小挫折,然後經過多次查詢驗證才發現是因為地址不對的緣故,我在此放出兩種交換的方法,先發錯誤的如下:#include <stdio.h> void swap(int a,int b) { int temp=a; a

C語言實現一個計算器(兩種方式)

1.使用switch…case…語句實現 #define _CRT_SECURE_NO_DEPRECATE 1 #include <stdio.h> #include <stdlib.h> int add(int x, int y) {   &nb

C語言編寫一個函式,將一個數字字串轉換成這個字串對應的數字(包括正浮點數、負浮點數)

//編寫一個函式,將一個數字字串轉換成這個字串對應的數字(包括正浮點數、負浮點數) //例如:“12.34“ 返回12.34. " -12.34" 返回12.34 #include<

c語言實現翻轉字串函式reverse_string

函式reverse_string(char * string) 實現:將引數字串中的字元反向排列。 要求:不能使用C函式庫中的字串操作函式。 #include <stdio.h> #in

C語言實現一個8bit資料(unsigned char 型別)的指定位(例如第n位)的置0或者置1操作,並保持其他位不變

請編碼實現以下功能的函式 功能:實現對一個8bit資料(unsigned char 型別)的指定位(例如第n位)的置0或者置1操作,並保持其他位不變。 函式原型:void bit_set(unsigned char *p_data,unsigned char position,int flag)

C語言編寫一個折半查詢函式

#include <stdio.h> int zheban(int x,int arr[],int left,int right) { while(left<=right) {

C語言實現一個8bit資料的指定位的置0或者置1操作,並保持其他位不變。

給定函式原型:void bit_set(unsigned char *p_data,unsigned char positin,int flag) 引數說明:p_data是指定的源資料;position是指定位(取值範圍為1~8);flag表示置0還是

C語言實現一個8bit資料(unsigned char)型別的指定位的置0或置1操作,並保持其他位不變

功能:實現對一個8bit資料(unsigned char)型別的指定位(例如第n位)的置0或置1操作,並保持其他位不變。 函式原型:void bit_set(unsigned char *p_data

c語言實現一個8bit資料(unsigned char 型別)的指定位(例如第n位)置0或者置1操作,並保持其他位不變

// 實現對一個8bit資料(unsigned char 型別)的指定位(例如第n位)置0或者置1操作,並保持其他位不變 #include <stdio.h> void bit_set(unsigned char *p_data, unsigned char

C語言輸入一個整數,求它的原碼,反碼,補碼值

補碼 while src info idt IV com scan -- 1 #include<stdio.h> 2 #include<math.h> 3 int main() 4 { 5 int m,n,a[10],i=0,y[

C語言記憶體分配函式malloc/ calloc/ realloc及記憶體釋放free

前言: 記憶體區域劃分與分配: 1、棧區(stack)——程式執行時由編譯器自動分配,存放函式的引數值,區域性變數的值等,程式結束時由編譯器自動釋放。 2、堆區(heap) —— 在記憶體開闢另一塊儲存區域。一般由程式設計師分配釋放, 若程式設計師不釋放,程式結束時可

C語言統計一個字串中字母、數字、空格及其它字元的數量

統計一個字串中字母、數字、空格及其它字元的數量 解法1: #include <stdio.h> #include <stdlib.h> #include <string.h> #include <ctype.h> void Count(con

C語言輸入一個整數N,求N以內的素數之和

【C語言】輸入一個整數N,求N以內的素數之和   /* ============================================================================ Name

C語言一個n*n矩陣,通過行變換,使其每行元素的平均值按遞增順序排序

#include<stdio.h> int main() { int n,a[100][100],r,c,i,j; scanf("%d",&n); for(i=0;i<n;i++) { for(j=0;j<n;j++) scanf("%d",&am

C語言實現小遊戲掃雷

用C語言實現掃雷小遊戲,一共有三部分的程式碼 game.h #ifndef __GAME_H_ #define __GAME_H_ #include <stdio.h> #include <stdlib.h> #include <time.h> #def

C語言實現小遊戲三子棋

三子棋的規則:在九宮格棋盤中,只要橫、豎、對角線都能走成一條直線,就贏了。 我將實現三子棋遊戲的程式分為三個部分 第一部分:標頭檔案 game.h #ifndef _GAME_H_ #define _GAME_H_ #include <string.h> #include

c語言指向指標(函式)的指標學習

1.指向指標指標的指標 定義形式:[儲存型別] 型別名 **指標名; int **p1; int *p2; int i=3; p2=&i; p1=&p2; **p1=5; 解析圖 把i的地址賦給p2,再把p2的地址賦給p1,p1---->p2------

C語言輸入一個整數,輸出該數二進位制表示中1的個數(三種方法)

輸入一個整數,輸出該數二進位制表示中1的個數。如輸入32,輸出1.程式碼實現:方法1:與運算#define _CRT_SECURE_NO_WARNINGS 1 #include<iostream> using namespace std; int FindOne