㈠ c語言程序問題 用指針將字元串中的空格刪除
將p++; 這一句從if子句中移出來,不管if條件是真是假,都要執行它。
#include<stdio.h>
fun(char * str)
{
char * p=str;
int i=0;
while((*p)!=0)
{ if((*p)!=' ')
str[i++]=*p;
p++; //將這一句從if子句中移出來,不管if條件是真是假,都要執行它。
}
str[i]=0;
}
main()
{
char str[100];
printf("Input a string:");
gets(str);
puts(str);
fun(str);
printf("str:%s",str);
return 0;
}
㈡ C語言 輸入一個字元串 利用指針 刪除它的空格字元~
1.兩個指針是根據自己需要來選的,p指針是用來遍歷整個輸入的字元串的,tmp是用來存儲非空格的字元的。你可以不用兩個指針,用tmp保存b的首地址,然後用b[i++]來遍歷,最後輸出用tmp。
2.已經通過*tmp++=*p
;這一句改掉了,tmp是指向b數組的指針。
3.*tmp++=*p
;這是後++,後加加的話意思是先使用該變數當前的值,用完後改變數tmp會自增1,與前加加是反過來的,這個得去看看計算機書了。。。
㈢ C語言怎樣刪除字元串中的空白字元
#include <stdio.h>
int main()
{
char *p="I am Chinese";
char c;
int i = 0;
while((c = p[i++])!='