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

c語言中輸出字元串

發布時間: 2022-09-10 07:53:42

c語言中怎麼輸出字元串中的某個字元

錯誤在於你判斷了第一個非@字元時就已經輸出沒有字元@退出循環了所以不會檢測@了。改成下面就行了:
#include
#include
int
main()
{
char
sh[100],n=0;
gets(sh);
for(int
i=0;sh[i];i
)
if(sh[i]=='@')
n
;
if(n==0)
printf("沒有字元
@\n");
else
printf("有字元
@\n");
}

❷ C語言:字元串輸入與輸出

#include
<stdio.h>
int
main()
{
char
str1[21]
=
{0},
str2[21]
=
{0},
str3[21]
=
{0};
//
getchar實現
printf("請輸入一個長度不超過20的字元串(getchar實現):");
int
c
=
0,
i
=
0;
while
((c
=
getchar())
!=
'\n')
{
str1[i++]
=
c;
}
//
scanf實現
printf("請輸入一個長度不超過20的字元串(scanf實現):");
scanf("%s",
str2);
getchar();
//
取走緩沖區的換行符
//
gets實現
printf("請輸入一個長度不超過20的字元串(gets實現):");
gets(str3);
//
putchar輸出
printf("putchar輸出:");
i
=
0;
while
(str1[i]
!=
'\0')
{
putchar(str1[i++]);
}
//
printf輸出
printf("\nprintf輸出:");
printf("%s\n",
str2);
//
puts輸出
printf("puts輸出:");
puts(str3);
printf("\n");
return
0;
}
問題答案:
1.
getchar可以根據用戶自定義的字元結束輸入,不受換行符和空白字元的限制
2.
scanf不能輸入空格,另外兩個可以
3.
在保證數據不會超出內存范圍的情況下,用gets和puts最方便
不存在空白字元的情況下,用scanf最方便
如果既有空白字元,又可能越界的情況下,getchar最方便

❸ C語言上中怎麼樣直接輸入輸出一個字元串

C語言中字元串的輸入和輸出主要有兩種方式:

輸入使用:scanf("%s",a);對應的輸出使用:printf("%s ",a);

輸入使用:gets(b);對應的輸出使用:puts(b);

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

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

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

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

❺ C語言輸入輸出字元串

在C語言中,輸入輸出字元串有以下兩種方式:
1
用scanf/printf輸入輸出。
scanf/printf是C語言的格式化輸入輸出函數,可以用於輸入輸出各種基礎類型,字元串(char*)也在其支持范圍內。
格式化字元為%s。
定義
char
str[100];
輸入
scanf("%s",str);
輸出
printf("%s",str);
2
C語言還支持專門的字元串輸入輸出函數:gets/puts。
gets的作用為,讀入一行輸入,並將讀到的換行符替換為字元串結束符。
puts的作用為,將字元串單行輸出,即輸出字元串內容後,會自動在結尾增加換行。
定義
char
str[100];
輸入
gets(str);
輸出
puts(str);

❻ C語言printf函數中,%C和%s都可以輸出字元串

這句話是不對的,因為%c只能夠輸出單個字元,%s表示的是輸出字元串,所以說這句話是錯誤的。

printf()函數是式樣化輸出函數, 一般用於向准則輸出設備按規定式樣輸出消息。正在編寫步驟時經常會用到此函數。printf()函數的挪用式樣為:printf(「<式樣化字元串>」,<參數表>);。

其中式樣化字元串包括兩部分內容:一部分是正常字元,這些字元將按原樣輸出;另一部分是式樣化規定字元。以「%」開端,後跟一個或幾個規定字元,用來確定輸出內容式樣。

(6)c語言中輸出字元串擴展閱讀:

printf函數注意:

函數printf從右到左壓棧,然後將先讀取放到棧底,最後讀取的放在棧頂,處理時候是從棧頂開始的,所以我們看見的結果是,從右邊開始處理的。

格式:

1、可以在「%」和字母之間插進數字表示最大場寬。

例如:%3d表示輸出3位整型數,不夠3位右對齊。

%9.2f表示輸出場寬為9的浮點數,其中小數位為2,整數位為6。

小數點佔一位,不夠9位右對齊。

%8s表示輸出8個字元的字元串,不夠8個字元右對齊。

如果字元串的長度、或整型數位數超過說明的場寬,將按其實際長度輸出。

但對浮點數,若整數部分位數超過了說明的整數位寬度,將按實際整數位輸出。

若小數部分位數超過了說明的小數位寬度,則按說明的寬度以四捨五入輸出。

另外,若想在輸出值前加一些0,就應在場寬項前加個0。

例如:%04d表示在輸出一個小於4位的數值時,將在前面補0使其總寬度為4位。

如果用非浮點數表示字元或整型量的輸出格式,小數點後的數字代表最大寬度,

小數點前的數字代表最小寬度。

例如:%6.9s表示顯示一個長度不小於6且不大於9的字元串。若大於9,則第9個字元以後的內容將被刪除。

2、可以在「%」和字母之間加小寫字母l,表示輸出的是長型數。

例如:%ld表示輸出long整數

%lf表示輸出double浮點數

3、可以控制輸出左對齊或右對齊,即在「%」和字母之間加入一個「-」號可說明輸出為左對齊, 否則為右對齊。

參考資料來源:網路-printf

❼ 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;

}

(7)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中定義,在使用時要加入相應的頭文件。

❽ 在C語言中如何實現用鍵盤輸入一個字元串,並列印出來

在C語言中實現用鍵盤輸入一個字元串,並列印出來的解決方法如下:

1、首先定義一個字元串數組,如你可以給字元串100個數組空間。如圖括弧內數字即為你定義的數組大小。

(8)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語言中,輸出字元的格式是什麼

C語言格式字元輸出格式有d,o,x,u,c,s,f,e,g等。如%d整型輸出,%ld長整型輸出,%o以八進制數形式輸出整數,%x以十六進制數形式輸出整數,或輸出字元串的地址。%u以十進制數輸出unsigned型數據(無符號數)。注意:%d與%u有無符號的數值范圍,也就是極限的值,不然數值列印出來會有誤。%c用來輸出一個字元,%s用來輸出一個字元串,%f用來輸出實數,以小數形式輸出,默認情況下保留小數點6位。%.100f用來輸出實數,保留小數點100位。%e以指數形式輸出實數,%g根據大小自動選f格式或e格式,且不輸出無意義的零。
【答題不易,請採納謝謝】

❿ c語言中如何借用指針輸出字元串

使用指針輸出字元串有以下幾種方式:

1、使用printf 函數進行輸出,其使用的格式轉換符為%s,如

char*str="test";//指針指向一個字元串

printf("%s ",str);//輸出str指向的字元串

2、使用puts函數進行輸出,如

char*str="test";

puts(str);//輸出str指向的字元串,會自動多輸出一個換行

3、使用自定義函數進行輸出,如

voidmyPuts(char*str)//自定義輸出函數

{

if(!str)return;

while(*str!=''){

putchar(*str);

str++;

}

}

char*str="test";

myPuts(str);

(10)c語言中輸出字元串擴展閱讀:

C++指針與字元串

1、C語言里沒有字元串數據類型,要想獲得字元串的表示形式利用字元數組

#include<iostream>

using namespace std;

#include<stdlib.h>

void main()

{

char ar[]={'a','b','c','d'};

cout<<ar; //字元串後無結束符,會有多餘列印

cout<<endl;

char br[]={'a','b','c','d',''};

cout<<br;

cout<<endl;

char cr[5]="abcd"; //字元串結尾默認隱藏了

cout<<cr;

system("PAUSE");

}

2、C語言里沒有字元串數據類型,要想獲得字元串的表示形式利用字元指針

#include<iostream>

using namespace std;

#include<stdlib.h>

void main()

{

char *p="hello world";

cout<<p;

//整形的指針,列印指針時只能列印其內部地址

//字元指針,列印指針時也是地址,但是這個被看作字元指針後,會列印該指針指向地址內存放的字元串,列印直到遇到為止

system("PAUSE");

}

3、靜態常量區的字元串存儲及指針訪問

#include<iostream>

using namespace std;

#include<stdlib.h>

#include<string.h>

void main()

{

char *p="hello world"; //hello world存放在內存的靜態常量區

//指針變數p存儲的是該靜態常量區的首個字元地址

//不能通過指針修改靜態常量區的字元,但是可以通過指針訪問

int length=strlen(p);

//strlen計算的是字元串p的有效長度,不算

for(int i=0;i<length;++i)

{

cout<<p[i];

}

system("PAUSE");

}

熱點內容
會員過期緩存的能看嗎不聯網 發布:2025-01-12 21:16:47 瀏覽:768
演算法工作原理 發布:2025-01-12 20:36:38 瀏覽:25
網路訪問監控軟體 發布:2025-01-12 20:26:57 瀏覽:466
養羊啦源碼 發布:2025-01-12 20:25:48 瀏覽:571
軒逸朗逸哪個配置最好 發布:2025-01-12 20:10:00 瀏覽:50
主板存儲器分 發布:2025-01-12 20:04:46 瀏覽:377
資料庫邏輯運算 發布:2025-01-12 20:03:54 瀏覽:572
javawindows伺服器搭建 發布:2025-01-12 19:59:37 瀏覽:571
linux關閉iptables 發布:2025-01-12 19:58:49 瀏覽:151
伺服器電腦名字改了影響資料庫嗎 發布:2025-01-12 19:58:44 瀏覽:653