當前位置:首頁 » 編程語言 » 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]);

}