當前位置:首頁 » 編程語言 » c語言輸出字元串數組

c語言輸出字元串數組

發布時間: 2022-05-21 08:53:08

A. c語言中如何輸入輸出字元串

在<string.h>頭文件中用字元串處理函數輸入和輸出,gest用來輸入,puts用來輸出。

字元串輸入函數gets,從鍵盤鍵入以回車結束的字元串放入字元數組中,並自動加』'。輸入串長度應小於字元數組維數,字元串中可以包含空格。

字元串輸出函數puts,向顯示器輸出字元串(輸出完,自動換行,即用' '替'')。字元數組必須以''結束。

示例代碼如下:

#include<string.h>

int main()

{

char str[40];

printf("請輸入字元串");

gets(str);

printf("請輸出字元串");

puts(str);

system("pause");

return 0;

}

(1)c語言輸出字元串數組擴展閱讀

在C中,對文件的操作分為兩種方式,即流式文件操作和I/O文件操作。

流式文件操作,這種方式的文件操作有一個重要的結構FILE,FILE在頭文件stdio.h中定義如下:

typedef struct {

int level; /* fill/empty level of buffer */

unsigned flags; /* File status flags */

char fd; /* File descriptor */

unsigned char hold; /* Ungetc char if no buffer */

int bsize; /* Buffer size */

unsigned char _FAR *buffer; /* Data transfer buffer */

unsigned char _FAR *curp; /* Current active pointer */

unsigned istemp; /* Temporary file indicator */

short token; /* Used for validity checking */

} FILE; /* This is the FILE object */

直接I/O文件操作,這是C提供的另一種文件操作,它是通過直接存/取文件來完成對文件的處理,此類文件操作常用的函數及其所用的一些符號在io.h和 fcntl.h中定義,在使用時要加入相應的頭文件。

B. C語言中字元數組輸出「燙燙燙燙燙燙燙」,如何解決

在字元數組最後加上 '',作為字元串結束標志。

strcpy(studname[k],ntemp);

strcpy(studname[i],studname[k]);

strcpy(ntemp,studname[i]);

strcpy(ntemp,studname[k]);

strcpy(studname[k],studname[i]);

strcpy(studname[i],ntemp);

(2)c語言輸出字元串數組擴展閱讀:

如果在定義字元數組時不進行初始化,則數組中各元素的值是不可預料的。如果花括弧中提供的初值個數(即字元個數)大於數組長度,則出現語法錯誤。

如果初值個數小於數組長度,則只將這些字元賦給數組中前面那些元素,其餘的元素自動定為空字元(即'')。如果提供的初值個數與預定的數組長度相同,在定義時可以省略數組長度,系統會自動根據初值個數確定數組長度。

C. C語言字元數組的幾種輸出方式

#include<stdio.h>
intmain()
{chars[]="Goodevening!";
inti;
for(i=0;s[i];i++)
printf("%c",s[i]);
printf(" ");

printf("%s ",s);

puts(s);
return0;
}

D. c語言中char類型數組的輸出問題--輸出時為何需要&符

在C語言中數組的名字即數組的起始地址,也是數組第一個元素的地址。因此,假設有一個char類型的數組a表示成如下代碼:

char a[20];

那麼a表示字元數組的起始地址,它和&a[0]是一個意思。

使用printf()輸出字元數組a的內容:

printf("%s ", a);

就等同於printf("%s ", &a[0]);

輸出的時候用:

int i = 0;

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

printf("a[%d]=%c ", i, a[i]);

}

防止緩沖區溢出可以用這樣的:

fgets(a, sizeof(a), stdin);

a[strlen(a) - 1] = '';

(4)c語言輸出字元串數組擴展閱讀:

如果在定義字元數組時不進行初始化,則數組中各元素的值是不可預料的。如果花括弧中提供的初值個數(即字元個數)大於數組長度,則出現語法錯誤。如果初值個數小於數組長度,則只將這些字元賦給數組中前面那些元素,其餘的元素自動定為空字元(即'')。

如果提供的初值個數與預定的數組長度相同,在定義時可以省略數組長度,系統會自動根據初值個數確定數組長度。

E. 請問大神c語言中字元數組的輸入輸出到底怎麼弄的呢

字元數組的輸入輸出可以有兩種方法:
逐個字元輸入輸出(%c)
整個字元串一次輸入輸出(%s)
輸出的字元中不包括結束符』\0』
用%s輸出字元串時,printf函數中的輸出項是字元數組名,不是數組元素名

如果一個字元數組中包含多個』\0』,則遇第一個』\0』時輸出就結束
可以用scanf函數輸入一個字元串
scanf函數中的輸入項c是已定義的字元數組名,輸入的字元串應短於已定義的字元數組的長度

char c[6];
scanf(」%s」,c); 比如輸入China
系統自動在China後面加一個』\0』

char str1[5],str2[5],str3[5];
scanf(」%s%s%s」,str1,str2,str3);
比如輸入:
How are you?

How\0\0 str1

are\0\0 str2

you?\0 str3
如果輸出st1
printf("%s",str1);
輸出:How.因為w後面的\0。所以系統讀到這就會結束了。

F. C語言:關於字元數組的輸出

這個字元串的長度應該是7,而不是6
因為字元串是以\0結尾的,這個結尾符佔1個位元組,但是不顯示出來
所以你把"abkedk"放進a[6]中其實是放不下的
可以用sizeof(a)/sizeof(a[0])看下數組a占的位元組數
另外有個函數strlen(a)可以計算字元串中的字元數,結果不包括結尾符'\0'

G. C語言中,如何正確列印字元串數組

試一試這種方式:


charname[10][100]={};
intictr;
for(ictr=1;ictr<=10;ictr++)
{
printf(" Number%dnameis:",ictr);
scanf("%s",name[ictr-1]);
}
printf("Names:");
for(ictr=0;ictr<10;ictr++)
{
printf("%s ",name[ictr]);
}

H. C語言 字元串數組

字元串輸出在遇到'\0'字元前不會停
char*
p
=
"123\0456";
printf(p);
//
輸出123
p[3]
=
'&';
printf(p);
//
輸出123&456
你代碼里為什麼那樣是因為多位數組的存儲空間是連續的
兩句strcpy後arr數組是變這樣
you.me.?
其中.代表空字元,?是未使用的空間

I. C語言輸入輸出字元串

ch【5】緩沖區過短,導致溢出,ch【5】中只存了 你輸入的前5個字元,限定輸入用scanf(「%5s」,ch)就行了,這樣ch中就是就是存的你數入的前5個字元,至於char ch;錯誤是因為格式化錯誤,即%s和ch不匹配,char ch【】在c語言中是不成立的,數組必須是定長的。

J. c語言從控制台輸入字元串數組並輸出

intmain()
{
charbuf[10][100];
inti,c;
for(i=0;i<10;i++)
{
scanf("%s",buf[i]);
c=getchar();
if(c==' ')break;
}
for(;i>=0;i--)
printf("%s ",buf[i]);

return0;
}

所有輸入佔一行,遇到換行結束。可以寫成這樣。

熱點內容
python集合運算符 發布:2025-02-14 03:06:18 瀏覽:204
pic編譯軟體 發布:2025-02-14 03:01:04 瀏覽:983
反編譯在編譯 發布:2025-02-14 02:55:36 瀏覽:417
python列印對象 發布:2025-02-14 02:51:20 瀏覽:572
QRM演算法 發布:2025-02-14 02:45:19 瀏覽:265
c語言列印結構體 發布:2025-02-14 02:42:28 瀏覽:140
編譯技術實驗一 發布:2025-02-14 02:28:24 瀏覽:647
編程手機入門 發布:2025-02-14 02:27:40 瀏覽:733
區域網視頻android 發布:2025-02-14 02:23:56 瀏覽:423
麒麟系統如何安裝安卓程序 發布:2025-02-14 02:07:21 瀏覽:399