c語言去掉空格
發布時間: 2022-09-11 03:23:03
㈠ c語言如何去掉每行最後的空格
把printf("%d ",m);改成printf(k ? " %d" : "%d",m);。
㈡ c語言刪除空格鍵
漲姿勢啦, %*c格式符之前見都沒見過,竟然表示跳過一個字元!
按你的代碼邏輯在for循環中,首先讀入一個字元,然後跳過一個字元,所以結果就是讀入的是輸入字元串的第奇數個字元:
對 aglh zhg zghh來說第奇數個字元分別是: a,l,空格,h,空格,g,h,剛好是輸出的幾個字元。
要刪除輸入字元中的空格不應該用%*c, 而應該讀入後判斷讀入的字元是否為空格,如果是空格則繼續,否則才將其賦值到數組內。
#include<stdio.h>
intmain()
{
chara[20],c;
inti=0;
while(i<20)
{
scanf("%c",&c);
if(c=='')
continue;
a[i++]=c;
printf("%c",c);
}
return0;
}
㈢ C語言中去掉空格問題
/*去除字元串右邊空格*/
void
vs_strrtrim(char
*pstr)
{
char
*ptmp
=
pstr+strlen(pstr)-1;
while
(*ptmp
==
'
')
{
*ptmp
=
'\0';
ptmp--;
}
}
/*去除字元串左邊空格*/
void
vs_strltrim(char
*pstr)
{
char
*ptmp
=
pstr;
while
(*ptmp
==
'
')
{
ptmp++;
}
while(*ptmp
!=
'\0')
{
*pstr
=
*ptmp;
pstr++;
ptmp++;
}
*pstr
=
'\0';
}
㈣ C語言 空格刪除
#include<stdio.h>
#include<string.h>
intstrdel(char*s);
intmain()
{
chara[100];
intn;
gets(a);
n=strdel(a);
puts(a);
printf("%d",n);
return0;
}
intstrdel(char*s)
{
inti,j=0,k=0,n;
char*p=s;
n=strlen(s);
for(i=0;i<n;i++)
{
if(*(p+i)=='')
{
j++;
continue;
}
else
{
*(s+k)=*(p+i);
k++;
}
}
*(s+k)='