把一個字串中的大寫字母放到後面,小寫字母放到前面,並且相對位置不變
/*°ÑÒ»¸ö×Ö·û´®µÄ´óд×Öĸ·Åµ½×Ö·û´®µÄºóÃ棬¸÷¸ö×Ö·ûµÄÏà¶ÔλÖò»±ä
*
*/
#include <stdio.h>
#include <string.h>
int main()
{
char buf[]= "WqqQaABbbCccccc`1233XccYccDdE";
char tem;
int pre, end,length,i;
int flag =0;
length = strlen(buf);
end = length -1;
pre = end;
while(1)
{
if( (pre < 0) )
break;
if( (buf[end] >= 'A') && (buf[end] <= 'Z') )
{
end--;
if( pre >= end )
pre = end -1;
continue ;
}
//while((pre >= 0) && (buf[pre] >= 'a') && ( buf[pre] <= 'z') )
while((pre >= 0) && ((buf[pre] < 'A')|| ( buf[pre] > 'Z')) )
{
pre--;
}
if( (pre >= 0) && (buf[pre] >= 'A') && (buf[pre] <= 'Z') )
{
if( pre < end )
{
tem = buf[pre];
for( i = pre+1; i<=end; i++ )
{
buf[i-1] = buf[i];
}
buf[end] = tem ;
end--;
pre--;
}
}
}// while
printf("====%s\n", buf);
}
相關推薦
把一個字串中的大寫字母放到後面,小寫字母放到前面,並且相對位置不變
/*°ÑÒ»¸ö×Ö·û´®µÄ´óд×Öĸ·Åµ½×Ö·û´®µÄºóÃ棬¸÷¸ö×Ö·ûµÄÏà¶ÔλÖò»±ä * */ #include <stdio.h> #include <string.h> int ma
把一個字串的大寫字母放到字串的後面,各個字元的相對位置不變,且不能申請額外的空間。
import java.util.Scanner; public class Yiwei { public static void main(String[] args) { &
[面試演算法]把一個字串的大寫字母放到字串的後面,各個字元的相對位置不變,不能申請額外的空間。
//把一個字串的大寫字母放到字串的後面,各個字元的相對位置不變,不能申請額外的空間。 void MoveSupperToEndWithOrginOrder( char* szSrc , int nS
實現一個函式,把一個字串中的字元從小寫轉為大寫。
#include <stdio.h> #include <stdlib.h> #include <conio.h> void upper(char* s, char* us) { while(*s != '\0')
java編寫輸出一個字串中大寫英文字母數、小寫英文字母數以及非英文字母數
下面用了三種演算法實現,執行效率逐漸提高... 第一種: public class TestString { public static void main(String[] ar
輸入一個整數陣列,實現一個函式來調整該陣列中數字的順序,使得所有的奇數位於陣列的前半部分, 所有的偶數位於陣列的後半部分,並保證奇數和奇數,偶數和偶數之間的相對位置不變。
/** * * 輸入一個整數陣列,實現一個函式來調整該陣列中數字的順序,使得所有的奇數位於陣列的前半部分, * 所有的偶數位於陣列的後半部分,並保證奇數和奇數,偶數和偶數之間的相對位置不變。 * * */ public class Solution { public stati
劍指offer題目描述 輸入一個整數陣列,實現一個函式來調整該陣列中數字的順序,使得所有的奇數位於陣列的前半部分,所有的偶數位於位於陣列的後半部分,並保證奇數和奇數,偶數和偶數之間的相對位置不變。
牛客網劍指offer線上程式設計: 方法一:利用兩個指標,實現了是陣列奇數在前偶數在後,但通過不了測試用例,因為改變了奇數和奇數,偶數和偶數之間的相對位置 class Solution { public: void reOrderArray(vector<in
給定一個數組nums,寫一個函式將所有的值移動0到最後,同時保持非零元素的相對順序不變
import java.util.*;class Solution { public void moveZeroes(int[] nums) { List<Integer> nonZeroElements = new ArrayList&
給定由大寫,小寫字母和空格組成的字串,返回 最後 一個單詞的長度。 如果輸入中不存在單詞,返回 0。
給定由大寫,小寫字母和空格組成的字串,返回 最後 一個單詞的長度。 如果輸入中不存在單詞,返回 0。 注意: “單詞”是指不包含空格符號的字串 例如: 對於字串"hello World"(不帶引號), 那麼返回的結果是 5; 對於字串"abc "(不帶引號),那麼
將一個字串中的大寫字母,空字元,小寫字母和數字統計出個數
public class Test2 { public static void main(String[] args) { String s="absdfkJ JJSKF M76N KNDSFK907J980"; int num=0; int xiaoxi
把一個字串所有出現的大寫字母都替換成小寫字母,同時把小寫字母替換成大寫字母。
原始碼如下:#include <stdio.h>#include <stdlib.h>#include <string.h>char* ChangeEngChar(c
【Java】編寫一個程式,輸出一個字串中的大寫英文字母數,小寫英文字母數以及非英文字母數
/* * 作者:筱筱 * 日期:20170507 * 功能:編寫一個程式,輸出一個字串中的大寫英文字母數,小寫英文字母數以及非英文字母數。 */ public class Aa3Count { public static void main(S
編寫一個程式,輸出一個字串中的大寫英文字母數,小寫英文字母數以及非英文字母數。
import java.util.Scanner;public class CountString{ public static void main(String[] args){ int uletter = 0;//儲存大寫字母 int l
JAVA傳入一個字串,返回一個字串中的大寫字母
/** * * @param 傳入一個字串 * @return 返回一個字串中的大寫字母 */ private static String stringChange(String s) { if (
在一個字符串中,統計大寫字母個數,小寫字母個數,其他字符個數的四種算法
nload PC 這一 write pro ews toc title 指定 題目描述:編寫程序,輸出字符串中的大寫字母、小寫小母和其他的個數。如有一個字符串"Helle, This is A test textfile.123456, tannk you!!",則其大寫字
統計一個字符串中大寫字母字符,小寫字母字符,數字字符出現的次數,其他字符出現的次數。
包含 abc 出現的次數 i++ r++ abcde g++ HA () /** * A:案例演示 * 需求:統計一個字符串中大寫字母字符,小寫字母字符,數字字符出現的次數,其他字符出現的次數。 * ABCDEabcd123456!
【C語言】統計一個字串中字母、數字、空格及其它字元的數量
統計一個字串中字母、數字、空格及其它字元的數量 解法1: #include <stdio.h> #include <stdlib.h> #include <string.h> #include <ctype.h> void Count(con
把一個字串裡的所有單詞的第一個字元轉換為大寫
//把一個字串裡的所有單詞的第一個字元轉換為大寫 用到 了字串方法split slice join charAt toUpperCase var str = 'ni hao ma!' function getUpper(str){ var words = str.split(' '); for(v
判斷一個字串中數字還是字母(java)
public class Test { public static void main(String[] args) { String str = "wq8123fvvbvrt78931321"; &nb
統計一個字串中字母、數字、其它字元的個數,返回一個元組`
統計一個字串中字母、數字、其它字元的個數,返回一個元組` def sum_of_characters(str1): num = 0 letter = 0 char = 0 for i in str1: if i.isdigit():