C语言中输入字符串,里面有空格,怎么根据空格把字符串分开,并存在数组里?
程序源码如下:
#include<stdio.h>
#include<string.h>
int main(void)
{
char str[1000];//定义一个字符串数组
char strnew[1000];//定义一个备用字符串数组
char m[] = " ";//定义空格变量
printf("请输入一串字符:");//文字提示输入字符串
gets(str);//输入字符串
char *p = strtok(str,m);//取str与m的指针
printf("%s
",p); //输出
p = strtok(NULL,m);
while(p) //遍历输出
{
printf("%s
",p); //输出字符串
p = strtok(NULL,m); //指向下一个
}
}
程序输出结果:
扩展资料:
C语言:输入一个字符串放入数组里,删除其中的空格
#include <stdio.h>
#include<string.h>
#define N 100
void main()
{
int i=0,j;
char c,str[N];
printf("输入字符串str:
");
while((c=getchar())!='
')
{
str[i]=c;//输入字符串
i++;
}
str[i]='\0';
for(i=0;str[i]!='\0';i++)
{
if(str[i]==' ')
{
for(j=i+1;str[j]!='\0';j++)
{
str[j-1]=str[j];
}
str[j]='\0';
}
else continue;
}
str[i-2]='\0';
printf("去掉空格后的字符串为:
");
for(i=0;str[i]!='\0';i++)
printf("%c",str[i]);
printf("
");
}
绛旓細C璇█涓锛屽鐞鍚湁绌烘牸鐨勫瓧绗︿覆杈撳叆鏈夊绉嶆柟娉曘傞鍏堬紝濡傛灉浣犱娇鐢╟har鏁扮粍锛屽彲浠ヨ繖鏍锋搷浣滐細澹版槑涓涓猚har绫诲瀷鐨勬暟缁勶紝濡俢hars[100];鐒跺悗鍒╃敤cin.getline()鍑芥暟璇诲彇杈撳叆锛屼緥濡俢in.getline(s,1000)锛岃繖閲1000鏄渶澶ч暱搴︺傝緭鍏ヤ緥濡"Hello"锛岃緭鍑虹粨鏋滀細淇濇寔鍘熸牱銆傚浜巗tring绫诲瀷鐨瀛楃涓诧紝鎿嶄綔鏇翠负绠娲侊細澹版槑涓...
绛旓細杈撳叆鏃惰鎵撶┖鏍硷紝浠g爜鏍煎紡闂銆1銆佽緭鍏ユ椂璇墦绌烘牸锛氳繖鏄渶甯歌鐨勫師鍥狅紝鍦ㄨ緭鍏ヤ唬鐮佹椂涓嶅皬蹇冨湪涓嶅簲璇ョ殑鍦版柟杈撳叆浜嗙┖鏍笺2銆佷唬鐮佹牸寮忛棶棰橈細鏈夋椂鍊欙紝鍗充娇浠g爜涓病鏈夌洿鎺ユ彃鍏ョ┖鏍硷紝鏍煎紡闂瀵艰嚧杈撳嚭涓瓨鍦ㄧ┖鏍硷紝渚嬪锛屽瓧绗︿覆涓殑鏌愪釜瀛楃鍚庨潰鏈変竴涓湭鍒濆鍖栫殑鍙橀噺鎴栨湭鍒濆鍖栫殑鍐呭瓨浣嶇疆锛屽畠浼氳緭鍑轰负绌烘牸銆
绛旓細C璇█杈撳叆涓琛鏈夌┖鏍肩殑瀛楃涓鐨勬柟娉曪細1銆佸浜巆har char s[100];cin.getline(s,1000);//绗簩涓弬鏁拌〃绀哄厑璁歌緭鍏ョ殑鏈澶ч暱搴hile(cin.getline(s,1000));杈撳叆杈撳嚭鏍蜂緥 杈撳叆:He llo 杈撳嚭:He llo 2銆佸浜巗tring string s;getline(cin,s);while(getline(cin,s));杈撳叆杈撳嚭鏍蜂緥 杈撳叆:He llo 杈撳嚭:H...
绛旓細include<stdio.h> include<string.h> int main(void){ char str[1000];//瀹氫箟涓涓瓧绗︿覆鏁扮粍 char strnew[1000];//瀹氫箟涓涓鐢ㄥ瓧绗︿覆鏁扮粍 char m[] = " ";//瀹氫箟绌烘牸鍙橀噺 printf("璇疯緭鍏ヤ竴涓插瓧绗锛");//鏂囧瓧鎻愮ず杈撳叆瀛楃涓 gets(str);//杈撳叆瀛楃涓 char *p = strtok(str,m);//鍙...
绛旓細C璇█涓紝鍙互鐢╣ets鍑芥暟鏉ユ帴鏀惰緭鍏ョ殑瀛楃涓诧紙鍖呭惈绌烘牸锛銆傛牸寮忥細gets(瀛楃鏁扮粍鍚);鍔熻兘锛歡ets鍑芥暟鐢ㄤ簬灏嗚緭鍏ョ殑瀛楃涓插唴瀹瑰瓨鏀惧埌鎸囧畾鐨勫瓧绗︽暟缁勪腑锛岃緭鍏ョ粨灏剧殑鎹㈣绗'\n'琚崲鎴'\0'瀛樺偍鍦ㄨ鏁扮粍涓備妇渚嬭鏄庡涓嬶細char str[20]; // 瀹氫箟涓涓瓧绗︽暟缁勶紝澶у皬涓20涓瓧鑺俫ets(str); // 灏嗙敤鎴...
绛旓細c璇█涓杈撳嚭瀛楃涓茬殑鍑芥暟鏈塸rintf("%s") puts() fputs()绛夛紝瀛楃涓蹭腑鍙互鏄换鎰忕殑瀛楃锛鍖呮嫭绌烘牸鍦ㄥ唴锛屾棤鐗规畩澶勭悊锛屽锛歝har str[]="hello world" ;printf("%s\n", str );puts(str);fputs(str,stdin);浣嗗湪杈撳叆甯︽湁绌烘牸鐨勫瓧绗︿覆鏃讹紝鍙兘鐢╣ets锛堬級鎴杅gets()锛岃屼笉鑳界敤scanf("%s") ,鍥犱负...
绛旓細1銆侀鍏堬紝闅忎究鍒涘缓涓涓湁main鏂规硶鐨勭被銆2銆佸畾涔変竴涓瓧绗︿覆鍙橀噺锛岃繖閲岀粰鍙橀噺璧嬪硷紝鍓嶅悗閮界暀鏈変竴涓┖鏍笺3銆佸厛杩愯涓閬嶏紝鐪嬭緭鍑烘晥鏋滐紝鍙互鐪嬪埌鐧惧害鍖呮嫭绌烘牸鐨鍑犱釜瀛楃閮芥墦鍗板嚭鏉ヤ簡銆4銆佷负浜嗘洿鍔犳竻鏅帮紝鐢ㄥ瓧绗︿覆瀵硅薄鍙﹀涓涓柟娉曗渓ength()鈥濆緱鍒版瀛楃涓茬殑闀垮害涓6锛 璇存槑鐨勭‘鏄滅櫨搴︹濆姞涓や釜绌烘牸鐨勯暱搴...
绛旓細鎹㈣绗︿笉浣滀负璇诲彇涓茬殑鍐呭锛岃鍙栫殑鎹㈣绗﹁杞崲涓衡榎0鈥欑┖瀛楃锛骞剁敱姝ゆ潵缁撴潫瀛楃涓层傝繑鍥炲 璇诲叆鎴愬姛锛岃繑鍥炰笌鍙傛暟buffer鐩稿悓鐨勬寚閽堬紱璇诲叆杩囩▼涓亣鍒癊OF(End-of-File)鎴栧彂鐢熼敊璇紝杩斿洖NULL鎸囬拡銆傛墍浠ュ湪閬囧埌杩斿洖鍊间负NULL鐨勬儏鍐碉紝瑕佺敤ferror鎴杅eof鍑芥暟妫鏌ユ槸鍙戠敓閿欒杩樻槸閬囧埌EOF銆
绛旓細char str[101];gets(str);杩欎釜璇彞鏄杈撳叆瀛楃涓茬殑锛鍖呮嫭绌烘牸锛沺rintf(" ");杩欏氨鏄緭鍑虹┖鏍硷紱褰撹緭鍑烘槸'\0'鐨勬椂鍊欑粨鏉燂紱鎴戜篃鏄柊鎵 澶氬鍏崇収
绛旓細浣犳兂瑕佹寚閽堢殑鏂规硶缁欎腑鏂囨彃鍏绌烘牸鎵撳嵃杈撳嚭锛屼綘鐨勪唬鐮侀敊鍦1銆佺粨鏉熺鍙疯鍐0鎴栬'\0'锛屼笉鑳藉啓鈥淺0鈥濄2銆佷竴涓腑鏂囨槸2涓嫳鏂瀛楃澶у皬锛屾墍浠ユ瘡娆″惊鐜寚閽堣鍙2浣嶆墦鍗般傛墍浠ヤ笂闈㈤偅涓寚閽堢殑浠g爜瑕佹敼鎴愶細include <stdio.h> int main(){ char* p= "绾㈡榛勭豢闈掕摑绱";while(*p!=0){ printf("%c%c "...