當前位置:首頁 » 編程語言 » C語言的字元數組的列印
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

C語言的字元數組的列印

發布時間: 2022-05-12 03:22:08

c語言將字元數組存進函數並列印

在c語言中數組在函數中傳遞是通過指針來進行的。比如
void
print_str(const
char
*str)
{
printf("%s",
str);
}
int
main()
{
print_str("hello
world\n");
return
0;
}

Ⅱ C語言中一般是怎麼列印出字元數組的

首先附值的時候為了使空間更准確可以這樣
char c[]="wowow";

第二是printf("%s", c); 而不是你的s% 。

Ⅲ C語言:怎麼列印二維數組中的字元串呢我嘗試%s,%c打出來的都不是

直接用個二重循環,然後再一個個列印,列印的時候可以用%s。

Ⅳ 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]);
}

Ⅳ 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]);

(5)C語言的字元數組的列印擴展閱讀:

由數字、字母、下劃線組成的一串字元。一般記為 s=「a1a2···an」(n>=0)。它是編程語言中表示文本的數據類型。在程序設計中,字元串(string)為符號或數值的一個連續序列,如符號串(一串字元)或二進制數字串(一串二進制數字)。

字元串在存儲上類似字元數組,它每一位單個元素都是能提取的,字元串的零位是它的長度,如s[0]=10,這提供給我們很多方便,例如高精度運算時每一位都能轉化為數字存入數組。

Ⅵ C語言,字元串數組的輸出;

getch()這句多餘,只是列印而已不需要這個函數接收字元。
printf("%s\n",&ch[0]);
printf("%s\n",&ch[1]);
printf("%s\n",&ch[2]);
這3句列印,第2個傳參和printf函數形參類型不一致,函數需要的是char *,而你給的是char*[12]。
運行可以,但會有警告。
你想要傳遞的是每行的首地址。你不想被警告,可以強轉型(char *)&ch[0] 或者&ch[0][0]。

Ⅶ C語言列印數組的內容

%x是將一個整數按照16進制數字列印。而a是一個字元數組的首地址,如果按照%x來列印的話,那就是列印a所在的地址,並不是列印他的內容,所以%010x是沒有辦法列印出樓主需要的結果的。
樓主想列印的是的數組裡面的內容的話,那就只能遍歷列印裡面的內容了。
char* format="%08x-%02x%02x%02x%02x%02x";
memset(b,0,100);
sprintf(b,format,d,a[0],a[1],a[2],a[3],a[4]);這個樣子就可以了,將數組裡面的內容按照16進制列印,每一個佔用2個字元就ok啦。

Ⅷ C語言列印字元串的一部分的方法

你現在要使用的是printf()函數,而不是sprintf()函數。請看下例:
#
include
#
include
void
main
(void);
void
main
(void)
{
char
*
source_str
=
"THIS
IS
THE
SOURCE
STRING"
;
/
*
Use
printfO
to
print
the
first
11
characters
of
source_str.
*
/
printf("First
11
characters:
'
%11.
lls'\n"
,
source_str);
/
*
Use
printf()
to
print
only
the
last
13
characters
of
source
_str.
*
/
printf("Last
13
characters:'%13.13'\n",
source_str+(strlen(source_str)-13));
}
上例的列印輸出如下所示:
First
11
characters:
'THIS
IS
THE'
Last
13
characters:'SOURCE
STRING'
在上例中,第一次調用printf()函數時,通過指定參數"%11.11s",迫使printf()函數只列印11個字元的長度,因為源字元串的長度大於11個字元,所以在列印時源字元串將被截掉一部分,只有頭11個字元被列印出來。第二次調用printf()函數時,它將源字元串的最後13個字元列印出來,其實現過程為:
(1)用strlen()函數計算出source_str字元串的長度,即strlen(source_str)。
(2)將source_str的長度減去13(13是將要列印的字元數),得出source_str中剩餘字元數,且pstrlen(source_str)-13。
(3)將strlen(source_str)-13和source_str的地址相加,得出指向source_str中倒數第13個字元的地址的指針;即source_str+(strlen(source_str)-13)。這個指針就是printf()函數的第二個參數。
(4)通過指定參數「%13.13s」,迫使printf()函數只列印13個字元的長度,其結果實際上就是列印源字元串的最後13個字元。

Ⅸ C語言,如何向一個字元數組輸入字元,並列印

int c,i; //c應該改為 char c
while((c=getchar())!=EOF) //c是字元變數,EOF是字元串,不能把字元串賦給字元變數

也可以用scanf();輸入。不過要求輸入的時候字母間不能加空格。
例:scanf("%s",s); //s是數組名,s前不必加&,因為數組名就是該數組的首地址。

最好的字元串輸入輸出形式還是
gets(數組名); //輸入
puts(數組名); //輸出
不過一般用gets();前都要加上
fflush(stdin);清理鍵盤緩沖,因為可能程序中有殘留的回車等。

Ⅹ c語言 列印給定字元串的所有排列

#include <stdio.h>

void pern(char s[],int k)

{int i;

char c;

if(k==2)

printf("%s ",s);

else

for(i=k;i<=2;i++)

{c=s[k];s[k]=s[i];s[i]=c;

pern(s,k+1);

c=s[k];s[k]=s[i];s[i]=c;

}

}

void print_all_permutations(char *str)

{ pern(str,0);

return;

}

int main(void)

{ char str[256] = "ABC";

print_all_permutations(str);

return 0;

}