A. c語言中輸入字元串,裡面有空格,怎麼根據空格把字元串分開,並存在數組里

程序源碼如下:

#include<stdio.h>

#include<string.h>

intmain(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); //指向下一個

}

}

程序輸出結果:


(1)c語言空格數組擴展閱讀:

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]='';

for(i=0;str[i]!='';i++)

{

if(str[i]==' ')

{

for(j=i+1;str[j]!='';j++)

{

str[j-1]=str[j];

}

str[j]='';

}

else continue;

}

str[i-2]='';

printf("去掉空格後的字元串為: ");

for(i=0;str[i]!='';i++)

printf("%c",str[i]);

printf(" ");

}

B. c語言如何將一串由空格和換行符隔開的整數輸入一個數組

#include<stdio.h>

intmain()
{
inta[10]={0},i=0;
for(i=0;i<10;i++)
{
scanf("%d",&a[i]);
}

for(i=0;i<10;i++)
{
printf("%d",a[i]);
}

return0;
}

123344
33344
555
44
556677

C. c語言 如何用數組形式一次性輸入幾個數字 中間有空格 不換行

給個例子你吧
#include<>
int main()
{
int n[8],i; //定義一個有8個元素的一維數組
for(i=0;i<8;i++)
scanf("%d",&n[i]); //一般數組用循環輸入,二維就用2個循環輸入,不懂可以追問我
printf("");
return 0;
}

D. 在C語言中如何區分數組中的空格,並提取數組單個字元!求大神講解!

char p0,p1,sstr[100][20];
int n;
p1=mystring; n=0;
while ( *p1 )
{ p0=p1; while ( (*p1)!=0 && (*p1)!=' ' ) p1++;
if ( (*p1)!='\n' ) { (*p1)=0; p1++; } else { (*p1)=0; p1++; (*p1)=0; }
strcpy(sstr[n],p0); n++; if ( n>=100 ) break;
}

E. C語言,目的:輸入一串數字,用空格隔開,然後賦值給數組

#include<stdio.h>
voidmain()
{
intspace=0,temp;
charc;
inta[100],i,flag;
temp=0;
printf("pleaseinputsomenumber,lessthan100");
while((c=getchar())!=' ')
{if(c=='')
{
a[space]=temp;
space++;
temp=0;
flag=0;
}
else
{
flag=1;
temp=temp*10+(c-48);//將字元數字C轉換為實際數字C
}
}

if(flag)//如果回車鍵之前為非空格,則該數也要存入數組
{
a[space]=temp;
}

for(i=0;i<space+1;i++)
pringtf("a[%0d]=%8d",i,a[i]);

}

F. c語言輸出字元數組空格

優化後的代碼,如下:
#include<iostream>
usingnamespacestd;
intmain()
{
charstr[100],t;
cin.getline(str,sizeof(str));//C++讀一行字元,允許輸入空格,遇回車結束
for(inti=0;str[i];i++)//不要到99,要判斷
{
if(str[i]<'v'&&str[i]>='a')
t=(str[i]+5);
else if(str[i]<='z'&&str[i]>='v')
t=(str[i]-21);
else
t=str[i];
cout<<t;
}
cout<<endl;
return0;
}

G. c語言 字元串數組中空格佔用空間嗎

數的時候不僅要算空格,還要算末尾的空字元'\0',
所以這個字元串大小應是13個字元

H. c語言問題 高手幫忙 字元數組 問題空字元'\0' 是空格嗎

空字元'\0' 用 %c 形式輸出,是一個空格。
空字元'\0' 用 %d 形式輸出,是一個數字 0。
空格字元 ' ' 用 %c 形式輸出,是一個空格。
空格字元 ' ' 用 %d 形式輸出,是一個數值32。

'\0' 是字元串結束標記,strlen(c) 長度計算,只計算到 '\0' 以前那個字元。
'\0' 是字元串結束標記,%s輸出 只輸出到 '\0' 以前那個字元。
===========
'\0', ' ' 的不同,我們用下面輸出方法可以看出。
#include<stdio.h>
int main(){
char c[10]="ab";
int i,n=0;
for (i=0;i<5;i++) printf("%c|",c[i]);
printf("XXXX");
printf("|%c|",' '); // 空格
printf("\n============\n");
for (i=0;i<5;i++) printf("%d|",c[i]);
printf("XXXX");
printf("|%d|",' '); // 空格
return 0;
}

I. c語言中的數組輸入的每一個元素要用逗號隔開還是空格鍵還是其他的什麼

你要看那個scanf後面的引號包含的內容,如果其中有逗號,輸入時就要用逗號,如scanf("%d,%d",&a,&b)
如果沒有那個逗號就可以用空格或換行符

J. C語言數組怎麼輸出空格

strcpy 就是字元串復制,包括\0一起。 但是\0之後的 不會動
所以,復制後 a中存的是
A B C \0 e \0
這樣 a[4]就是 e
輸出
e
選C