c語言scanf輸入字元
㈠ c語言scanf函數輸入單個字元%c用%s代替
用scanf(%s,
&flag)應該會有內存溢出錯誤。
太久沒弄過c了,幫你頂下吧。
㈡ 如何在C語言中用scanf輸入數組
#include
main()
{
struct
{
intnum;
charname[20];
charsex;
intage;
}stu[5];
inti;
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);
}
}
拓展資料
C語言是一門通用計算機編程語言,應用廣泛。C語言的設計目標是提供一種能以簡易的方式編譯、處理低級存儲器、產生少量的機器碼以及不需要任何運行環境支持便能運行的編程語言。
盡管C語言提供了許多低級處理的功能,但仍然保持著良好跨平台的特性,以一個標准規格寫出的C語言程序可在許多電腦平台上進行編譯,甚至包含一些嵌入式處理器(單片機或稱MCU)以及超級電腦等作業平台。
㈢ c語言怎麼用scanf輸入字元串
c語言用scanf輸入字元串:
char s[300];
scanf("%s",s);
這個語句只能輸入不包含空格和跳格鍵的字元串並且以回車符結束輸入。
㈣ c語言,scanf 輸入字元串問題
scanf("%s",str2)的實際操作是將str2作為一個指針,按照字元串(%s)來讀取和識別標准輸入的內容,並將讀取到的內容存儲到指針str2所指地址中。
你的str1被賦值為空(null),即為0,所有的系統均不會允許讀寫地址0上的內容,所以報錯。
可以試著申請一個地址並賦值給str1,這樣就能讀寫了,最後記得釋放內存
#include<stdio.h>
#include<stdlib.h>
intmain(intargc,char*argv[])
{
char*str1=(char*)calloc(1,10);
scanf("%s",str1);
printf("%s",str1);
free(str1);
}
㈤ C語言用如何用scanf輸入帶有空格的字元串
要輸入帶空格的字元串,要用到一個格式字元:%[] --> 一個字元集。
「%[]」的作用是掃描字元集合:
例如:scanf(「%[^
]」,str);
具體作用是:如果輸入的字元屬於方括弧內字元串中某個字元,那麼就提取該字元;如果一經發現不屬於就結束提取。該方法會自動加上一個'