c語言字元串列印
Ⅰ 在c語言中如何實現用鍵盤輸入一個字元串,並列印出來
在C語言中實現用鍵盤輸入一個字元串,並列印出來的解決方法如下:
1、首先定義一個字元串數組,如你可以給字元串100個數組空間。如圖括弧內數字即為你定義的數組大小。
(1)c語言字元串列印擴展閱讀:
字元數組的輸出:
(1)用putchar()或printf()的『%c』格式符對數組進行字元賦值。例如,對於數組a[10]:用putchar()賦值:
for(i=0;i<10;i++)
a[i]=putchar();
用printf()賦值:
for(i=0;i<10;i++)
printf("%c",a[i]);
輸出結果為:
c program[2]
(2)用printf()的'%s'格式對數組賦值。還是對於數組a[10];
printf("%s",a);
輸出結果為:
c program
參考資料來源:
網路-char
網路-字元數組
Ⅱ C語言輸入輸出字元串
char ch[5]表示的是定義了一個字元數組(即字元串),數組單元有5個,每個單元都是字元型,由於字元串是用\0作結束的,5個單元的字元數組實際上能完整存儲的只能是長度不超過4個字元的字元串,多了的話就要佔用其他單元了(這些單元有可能會被系統分配給其他變數,而能夠用來存儲字元串的就是你定義的這5個單元的字元數組),可能會出現溢出,也就是有時候會出現輸出的字元串後面有亂碼
char ch表示定義了一個字元變數,用scanf為其賦值的話應該用%c,即scanf("%c",&ch),它只能表示一個字元
char ch[]數組定義不允許[]里為空
char ch[1]表示的也是一個字元數組,所以你可以輸入字元串,同樣隨便輸入就有可能溢出
Ⅲ 怎麼用C語言輸出字元串
最基本的實現有三種,高級實現技巧不說。
第一種:
printf("%s",strSrc);
第二種:
puts(strSrc);
第三種:(或者用while,原理一樣)
inti;
for(i=0;i<strlen(strSrc);i++)
printf("%c",strSrc[i]);
看情況選取使用。
Ⅳ C語言中%s輸出字元串怎麼用
需要准備的材料分別有:電腦、C語言編譯器。
1、首先,打開C語言編譯器,新建一個初始.cpp文件,例如:test.cpp。
Ⅳ 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語言中printf輸出字元串的問題!
因為a和b沒有字元串的結束符號'\0'
所以
"chi"是會輸出的,但後面再輸出什麼,就不得而知了
"na"也會輸出的,但它後面再輸出什麼,也不得而知了
你這種輸出結果,只是很多中不可預期的輸出裡面的一種情況而已
Ⅶ C語言怎麼用printf輸出字元串。
void main()
{
unsigned char *x = "ab,sdf,sad,23432,cc";
data = x;
printf("data = %c ", *data);
printf("data = %s ", data);
system("pause");
}
(7)c語言字元串列印擴展閱讀:
printf輸出字元串的一些格式
1、原樣輸出字元串:printf("%s", str);
2、輸出指定長度的字元串, 超長時不截斷, 不足時右對齊:printf("%Ns", str);
註:N 為指定長度的10進制數值
3、輸出指定長度的字元串, 超長時不截斷, 不足時左對齊:printf("%-Ns", str);
註:N 為指定長度的10進制數值
4、輸出指定長度的字元串, 超長時截斷, 不足時右對齊:printf("%N.Ms", str);
註:N 為最終的字元串輸出長度
M 為從參數字元串中取出的子串長度
5、輸出指定長度的字元串, 超長時截斷, 不足時左對齊是:printf("%-N.Ms", str);
註:N 為最終的字元串輸出長度
M 為從參數字元串中取出的子串長度
參考資料來源:printf-網路
Ⅷ C語言 想用函數列印一串字元串
可以通過for循環來列印指定長度的字元(也即字元串的一部分)。 下面通過實例來說明具體的操作步驟: char *str="abcdefg"; // 定義一個字元串指針int i;for(i=2; i<5; i++) // 控制需要輸出字元串的起始位置(下標從0開始){ printf("%c", *(str+i)); // 以字元的形式輸出,輸出cde}