c語(yǔ)言是一種什么語(yǔ)言? C語(yǔ)言,輸入一個(gè)字符串,利用指針,刪除它的空格字符~?
C語(yǔ)言,輸入一個(gè)字符串,利用指針,刪除它的空格字符~?從if子句中刪除P語(yǔ)句并執(zhí)行它,無(wú)論if條件是真是假。#Include有趣(char*STR){char*P=STRint i=0而(*P)!=0
C語(yǔ)言,輸入一個(gè)字符串,利用指針,刪除它的空格字符~?
從if子句中刪除P語(yǔ)句并執(zhí)行它,無(wú)論if條件是真是假。
#Include
有趣(char*STR)
{
char*P=STR
int i=0
而(*P)!=0)
{TIF((*P)!=“”)T/T
STR[I]=*P
P//從if子句中刪除這個(gè)句子,不管if條件是真是假都執(zhí)行它。
}
這是[0
!{
]{[char[100
!{
!{
!{
!]{{!=”)STR[J]=STR[i]STR[J]=“0”puts(STR)}
c語(yǔ)言輸入一個(gè)字符串,刪除字符中的空格,然后輸出?
*P=“0”或“STR[i]=”0”的含義必須從上述循環(huán)開始?!皐hile(*P)”何時(shí)為假?只有當(dāng)p指向字符串的結(jié)束標(biāo)記時(shí),即p指向“0”,那么*p=0,循環(huán)才退出。在循環(huán)中,空間被移除。這里的方法是用*P給前面的空格賦值,*P的值是空格后面的字符,比如AB CD EFG“0”以后會(huì)變成ABCDEFG。為什么這里沒有“0”是因?yàn)樗谟袝r(shí)間給它賦值之前就已經(jīng)退出了循環(huán),所以在循環(huán)之后有必要添加“0”。字符串必須有一個(gè)“0”作為結(jié)束標(biāo)志,這是不言而喻的
~]?包括(&L)。H>int main(){int i,i1char a[100]為(i=0A[i])獲?。╝)!=0“I)如果(a[I]=”)對(duì)于(I1=ia[I1]!=“0”I1)a[I1]=a[I1]for(I=0A[I]!=“”0”I)printf(%C”,a[I])pushar(“”n”)返回0}
#Include<stdio。H>#包含<string。H>#包括<stdlib。頭部的跳過空間(char*STR){char*s=STR,*P=strif(STR==null)returnnullwhile(*s!=“0”&*s==“”)s/*跳過前導(dǎo)空格*/while(*s!=“0”*P=*s/*將剩余字符復(fù)制到新位置,P總是在s之前,只是跳過了這么多空格*/*P=“0”/*字符串結(jié)束標(biāo)識(shí)符*/returnStr}intmain(){Chara[30]printf(“inputstring:n”)獲?。╝)skipspace在頭(a)puts(a)system(“pause”)return0}