char s[]="This is C programming text",怎样将其存放在数组a[5][20]中,
其中a[i]放入一个单词。
char s[]="This is C programming text",怎样将其存放在数组a[5][20]中,
其中a[i]放入一个单词。
#include<stdio.h>
#define ROW 5
#define COLUMN 20
int main()
{
char s[]="This is C programming text";
char a[ROW][COLUMN];
char * p_s,(*p_arr)[COLUMN];
int row,column;
p_s=s;
for(row=0;row<5;row++)
{
column=0;
while(*p_s!=' ' && *p_s!='\0')
{
a[row][column]=*p_s;
p_s++;
column++;
}
if(column<COLUMN)//putting '\0' at the end ofthe row of the array
a[row][column]='\0';
p_s++;
}
//printf the array
p_arr=a;
for(;p_arr<a+column;p_arr++)
printf("%s\n",p_arr);
getchar();
return 0;
}
//dev-c++,gnu compiler
#include <iostream>
using namespace std;
int main()
{
char s[]="This is C programming text";
char *s2[]={"This", "is", "C", "programming", "text"};
cout<<s2[0];
return 0;
}
#include<stdio.h> /* 头文件要? 不要? */
main()
{
char s[]="This is C programming text";
char a[5][20];
int i=0,j=0,k=0;
while(k<strlen(s))
{
while(s[k]!=' '&&k<strlen(s)) /* 边界问题 */
{a[i][j]=s[k];k++;j++;}
a[i][j]='\0'; /* 字符字符串化 */
k++;i++;j=0; /* 初始化j */
}
for (i=0;i<5;i++) /* 输出单词 */
{printf("%s\n",a[i]);getch();}
}
我也不太喜欢指针...