当前位置:首页 » 编程语言 » c语言如何将单词输入数组
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

c语言如何将单词输入数组

发布时间: 2022-10-09 15:46:56

1. c语言如何将文件中一行内容按照空格分割,并将每个单词写入数组

将文件中一行内容按照空格分割进行读取,可以采用fscanf("%s")来实现

实现过程:

  • 定义二维字符数组,用来接收读到的每个单词

  • 以读方式打开文件

  • 循环读文件,将单词逐个读入数组

  • 循环结束后,关闭文件

  • 输出数组中的单词,以验证

参考代码:

#include<stdio.h>
intmain(void)
{
FILE*fp;
inti,j;
charwords[100][21];//最多读100个单词,每个单词不超过20个字符
fp=fopen("data.txt","r");
if(fp==NULL)
{
printf("openfileerror ");
return-1;
}
for(i=0;i<100;i++)//循环读取,控制不超过100个
{
if(fscanf(fp,"%20s",words[i])!=1)//控制每个单词不超过20个
break;
}
fclose(fp);
for(j=0;j<i;j++)//反向输出各单词
printf("%s",words[j]);
printf(" ");
return0;
}

2. C语言如何将文件中一行内容按照空格分割,并将每个单词写入数组

程序已调试过,运行的时候把filename改为你自己路径下的文件。
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
char str[1000];
void openfile(char *filename)
{
FILE *fp;
int file_size;
if((fp=fopen(filename,"r")) == NULL)
{
printf("can not open this file\n");
exit(0);
}
fseek(fp,0,SEEK_END);
file_size=ftell(fp);
printf("%d\n",file_size);
fseek(fp,0,SEEK_SET);
fread(str,sizeof(char),file_size,fp);
str[file_size-1]='\0';
printf("%s\n",str);
fclose(fp);
}

void Split()
{
char w[100][100];
char *pfirst=str;
char *pend;
int i=0;
int j,sum=0;
memset(w,0,sizeof(w));
while(pfirst)
{
pend=strstr(pfirst," ");
if(pend==NULL)
{
strncpy(w[i],pfirst,strlen(str)-sum);
i++;
break;
}
strncpy(w[i],pfirst,pend-pfirst);
sum+=pend-pfirst+1;
pfirst=++pend;
i++;
}
for(j=0;j<i;j++)
printf("%s ",w[j]);

}
int main()
{
char filename[40]="/opt/opthb/liuly/a.txt";
openfile(filename);
Split();
return 0;
}

3. C语言把输入的单词保存至指针数组该怎样操作

首先你是输入的单词 所以输入输出都得用%s

定义类型也得是基于char的

另外要求是指针数组 而你这个只是指针而不是数组

修改如下

#include<stdio.h>
#defineM100
main()
{
char*c[M];
for(i=0;i<M;i++)
c=(char*)malloc(sizeof(char)*1000);
inti;
for(i=0;i<M;i++)
{
scanf("%s",c[i]);

}
for(i=0;i<M;i++)
printf("%s ",c[i]);
for(i=0;i<M;i++)
free(c[i]);
system("pause");
}

4. 如何在C语言中用scanf输入数组

#include

main()

struct

int num;

char name[20];

char sex;

int age;

stu[5];

int i;

for(i=0;i<5;i++)

printf("请输入信息 ");

scanf("%d",&stu[i].num);

scanf("%s",&stu[i].name);

scanf("%c",&stu[i].sex); //在%c之前加一个空格

scanf("%d",&stu[i].age);

for(i=0;i<5;i++)

printf( "*%s*",stu[i].name);

(4)c语言如何将单词输入数组扩展阅读:

函数 scanf() 是从标准输入流stdin[1](标准输入设备,一般指向键盘)中读内容的通用子程序,可以说明的格式读入多个字符,并保存在对应地址的变量中。

函数的第一个参数是格式字符串,它指定了输入的格式,并按照格式说明符解析输入对应位置的信息并存储于可变参数列表中对应的指针所指位置。每一个指针要求非空,并且与字符串中的格式符一一顺次对应。

5. C语言中怎样把输入的字符串赋给数组

//基本实现你要的功能,用到了内存的动态开辟#include
<stdio.h>
#include
<stdlib.h>
void
main()
{
char**
pArrStr;//用来保存字符串数组
int
strLen;//用来保存字符串长度
int
i;
printf("请输入
字符数组
的个数:");
scanf("%d",&strLen);
pArrStr=(char**)malloc(sizeof(char*)*strLen);//动态开辟N个char*指针,然后给pArrStr保存
for(i=0;i<strLen;i++)
{
pArrStr[i]=(char*)malloc(255);
}
printf("请依次输入%d个字符串:",strLen);
for(i=0;i<strLen;i++)
{
scanf("%s",pArrStr[i]);
}
printf("输出:");
for(i=0;i<strLen;i++)
{
printf("%s\n",pArrStr[i]);
}}

6. C语言里如何输入几个字符串放到一个数组中

方法如下:

#include <stdio.h>

void main()

{

char s[10][80];

for(i=0;1<10;i++)

{

gets(s[i]);

}

}

(6)c语言如何将单词输入数组扩展阅读:

C语言是一门通用计算机编程语言,广泛应用于底层开发。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。

C语言常用词汇有:

条件 condition

变量 variant

过程 process

优先 priority

运算 operation

返回值 return value

函数 function

声明 declare

参数 parameter

静态的 static

外部的 extern

引用 reference

元素 element

地址 address

排序 sort

字符 character

字符串 string

应用 application

指针 pointer

参数 argument

数组 array

声明 declaration

表示 represent

处理 manipulate

成员 member

标记 tag

函数 function

枚举 enumerate

联合 ( 共用体 ) union

创建 create

插入 insert

删除 delete

修改 modify

7. c语言字符串数组怎么输入和输出呢

在C语言中,有两个函数可以在控制台(显示器)上输出字符串,它们分别是:

puts():输出字符串并自动换行,该函数只能输出字符串。

printf():通过格式控制符%s输出字符串,不能自动换行。除了字符串,printf() 还能输出其他类型的数据。

这两个函数相信大家已经非常熟悉了,这里不妨再演示一下,请看下面的代码:

#include <stdio.h>

int main(){

char str[] = "http://c.biancheng.net";

printf("%s ", str); //通过字符串名字输出

printf("%s ", "http://c.biancheng.net"); //直接输出

puts(str); //通过字符串名字输出

puts("http://c.biancheng.net"); //直接输出

return 0;

}

运行结果:

http://c.biancheng.net

http://c.biancheng.net

http://c.biancheng.net

http://c.biancheng.net

注意,输出字符串时只需要给出名字,不能带后边的[ ],例如,下面的两种写法都是错误的:

printf("%s ", str[]);

puts(str[10]);

(7)c语言如何将单词输入数组扩展阅读:

由数字、字母、下划线组成的一串字符。一般记为 s=“a1a2···an”(n>=0)。它是编程语言中表示文本的数据类型。在程序设计中,字符串(string)为符号或数值的一个连续序列,如符号串(一串字符)或二进制数字串(一串二进制数字)。

字符串在存储上类似字符数组,它每一位单个元素都是能提取的,字符串的零位是它的长度,如s[0]=10,这提供给我们很多方便,例如高精度运算时每一位都能转化为数字存入数组。

8. C语言如何把输入进去的数放到数组中

有两种方式:
1
先输入数值,在存放在数组的对应位置中,即赋值给对应元素。

scanf("%d",&i);
a[k]
=
i;
就是先输入到变量i中,然后把i存储在a的第k个元素中。
2
直接输入到数组对应元素中。

scanf("%d",&a[k]);
与1中的例子是相同效果,只是减少了中间变量的使用。

9. c语言如何将一句英语存入一个二维数组中

#include <stdio.h>
#include <string.h>
void main()
{
char haha[100][100];
char s[100];
char *p;
char *q;
int count = 0;
int i=0,j=0;
printf("请输入一段英文:");
gets(s);
p=q=s;
while(p = strchr(p,' '))
{
count++;//判断有几个单词
strncpy(haha[i],q,p-q);
haha[i][p-q] = '\0';
p = p+1;
q = p;
i++;
}
if(p == NULL)
{
strncpy(haha[i],q,strlen(q));
haha[i][strlen(q)]='\0';
}
for(j = 0; j <=count; j++)
printf("%s\n",haha[j]);

}