一:格式輸出函數(shù)printf()

成都創(chuàng)新互聯(lián)公司服務(wù)項(xiàng)目包括亭湖網(wǎng)站建設(shè)、亭湖網(wǎng)站制作、亭湖網(wǎng)頁制作以及亭湖網(wǎng)絡(luò)營銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢、行業(yè)經(jīng)驗(yàn)、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,亭湖網(wǎng)站推廣取得了明顯的社會(huì)效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到亭湖省份的部分城市,未來相信會(huì)繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!
1、調(diào)用形式一般為:printf("格式化控制字符串",輸出表列);
2、格式化控制字符串用于指定輸出格式,它有三種形式:
1、格式說明符:規(guī)定了相應(yīng)輸出表列內(nèi)容的輸出格式,以%打頭,如%d、%o等
2、轉(zhuǎn)義字符:用來輸出轉(zhuǎn)義字符所代表的控制代碼或者特殊字符,比如常用的‘\n'、‘\t'
3、普通字符:需要原樣輸出的字符。
3、輸出表列為若干需要輸出的數(shù)據(jù)項(xiàng),它與格式說明符在數(shù)量和類型上一一對應(yīng);
4、格式字符m指定輸出數(shù)據(jù)所占寬度,n對實(shí)數(shù)表示輸出n位小數(shù),對字符串表示截取的字符個(gè)數(shù),+表示右對齊,通常省略。
—表示左對齊,l用于長整型數(shù)據(jù),可加在d、o、x、u前,更多格式說明符及其組合形式如下所示:
格式字符
數(shù)據(jù)對象
輸出形式
數(shù)據(jù)輸出方法
%(+)-md
int
unsigned
int
short
unsigned
short
char
十進(jìn)制整數(shù)
1、無m按實(shí)際位數(shù)輸出
2、有m輸出m位;超過m位,按實(shí)際位數(shù)輸出,不足補(bǔ)空格
3、有+(默認(rèn)為+)右對齊(左補(bǔ)空格)
4、有-左對齊(右補(bǔ)空格)
%(+)-mo
八進(jìn)制整數(shù)
%(+)-mx
十六進(jìn)制整數(shù)
%(+)-mu
無符號整數(shù)
%(+)-mld
long
unsigned
long
十進(jìn)制整數(shù)
%(+)-mlo
八進(jìn)制整數(shù)
%(+)-mlx
十六進(jìn)制整數(shù)
%(+)-mlu
無符號整數(shù)
%(+)-m.nf
float
double
十進(jìn)制小數(shù)
%(+)-m.ne
十進(jìn)制指數(shù)
%(+)-g
自動(dòng)選用%f和%e中較短的輸出寬度輸出單、雙精度浮點(diǎn)數(shù)
%(+)-mc
char
int
short
單個(gè)字符
1、無m輸出單個(gè)字符
2、有m輸出m位,補(bǔ)空格
3、有+(默認(rèn)為+)右對齊(左補(bǔ)空格)
4、有-左對齊(右補(bǔ)空格)
%(+)-m.ns
字符串
一串字符
1.無m、n按實(shí)際字符串輸出全部字符
2、有m、n僅輸出前n個(gè)字符,補(bǔ)空格
3.有+(默認(rèn)為+)右對齊(左補(bǔ)空格)
4、有-左對齊(右補(bǔ)空格)
二:格式輸入函數(shù)scanf()
1、
調(diào)用格式一般為:scanf("格式化控制字符串",地址表列);
2、格式化控制字符串和printf()函數(shù)含義相似,所不同的是它是對輸入格式進(jìn)行控制;
3、地址表列是有若干等待輸入的數(shù)據(jù)所對應(yīng)的內(nèi)存單元地址組成,由逗號隔開,一般形式為a,a為變量;
4、地址表列在數(shù)量和類型上和格式化控制字符串中的格式說明符一一對應(yīng);
5、格式字符h表示輸入短型數(shù)據(jù),可用在d、o、x前面,m指定輸入數(shù)據(jù)所占寬度,
*表示對應(yīng)的數(shù)據(jù)項(xiàng)讀入后不賦給相應(yīng)的變量,更多格式說明符及其組合如下
格式字符
數(shù)據(jù)對象
輸入形式
數(shù)據(jù)輸入方法
%md
int
short
unsigned
int
unsigned
short
十進(jìn)制整數(shù)
1、無m按實(shí)際位數(shù)輸入
2、有m輸入m位,不足m則跟回車鍵
%mo
八進(jìn)制整數(shù)
%mx
十六進(jìn)制整數(shù)
%mld
long
unsigned
long
十進(jìn)制整數(shù)
%mlo
八進(jìn)制整數(shù)
%mlx
十六進(jìn)制整數(shù)
%mlf
float
double
十進(jìn)制整數(shù)
%mle
%mc
char
單個(gè)字符
1、無m取單個(gè)字符
2、有m輸入m位,僅取第一個(gè)字符
%ms
字符串
一串字符
1、無m取回車或空格前若干字符
2、有m僅取前m字符
1。根據(jù)學(xué)生信息定義一個(gè)結(jié)構(gòu)體類型,再說明一個(gè)該結(jié)構(gòu)體類型的數(shù)組。*/
struct stu_info{
char stuNo[10];/* No */
char stuName[30];/* Name */
float stuScore[3];/* the three scores */
float aveScore; /* average score */
float totalScore; /* total score */
}stu[10];
/* 2。用input函數(shù)從鍵盤上輸入10個(gè)學(xué)生的數(shù)據(jù)。 */
void input()
{ int i = 0;
printf("Input the students' infomation(FORMAT LIKE:No Name score1 score2 score3):\n");
while(i 10)
{ printf("Input %d:",i + 1);
scanf("%s%s%f%f%f",stu[i].stuNo,stu[i].stuName,stu[i].stuScore[0],stu[i].stuScore[1],stu[i].stuScore[2]);
i++;
}
}
1、首先創(chuàng)建一個(gè)c語言項(xiàng)目。然后右鍵頭文件,創(chuàng)建一個(gè)Stu的頭文件。
2、然后編寫頭文件的代碼。再將數(shù)據(jù)結(jié)構(gòu)的增刪改查和結(jié)構(gòu)體寫入頭文件。
3、然后在源文件中創(chuàng)建main源文件和Stu源文件。再main文件中寫入int mian()代碼。
4、然后在mian主函數(shù)中,寫入while語句無限循環(huán)。再寫入Init函數(shù)。
5、然后在Stu源文件的Init函數(shù)用printf語句,將學(xué)生管理系統(tǒng)輸出。再創(chuàng)建鏈表的頭節(jié)點(diǎn)head。
6、然后用switch函數(shù)對操作進(jìn)行判斷。再執(zhí)行數(shù)據(jù)結(jié)構(gòu)的增刪改查功能。
k=k0xff?0x00ff:k8;其實(shí)就是
if(k0xff) {
k=0x00ff;
}else {
k=k8;
}的簡寫。
其實(shí)0xff和0x00ff是一樣的,都表示同一個(gè)十六進(jìn)制的值。
書上這么寫,沒有錯(cuò);至于為什么,就不好說了。
可能是讓你多學(xué)點(diǎn)知識,也可能是現(xiàn)在很多書其實(shí)在編寫時(shí)并不是很認(rèn)真的。畢竟盡信書不如無書!
后面的k8是把0xff的值右移8位,達(dá)到計(jì)算的目的(具體什么目的要看具體內(nèi)容)
第一個(gè)要求:
#include
stdio.h
void
main()
{
char
a
;
scanf("%c",a)
;
/*
從鍵盤上輸入一個(gè)單個(gè)字符,并存入變量
a
中
*/
if(
(
a
=
'a'
)
(
a
=
'z'
)
)
/*
如果輸入的是
小寫字母
*/
{
a-=32
;
/*
把相應(yīng)的小寫字母轉(zhuǎn)換為
大寫字母
,并輸出
*/
printf("%c",a)
;
}
else
/*
如果是其它所有字母的話,就直接輸出字母本身
*/
printf("%c\n",
a
)
;
}
第二個(gè)要求:
65(按
十進(jìn)制
格式輸出)
101(按
八進(jìn)制
格式輸出)
41(按
十六進(jìn)制
格式輸出)
A(輸出ASCII
為
65
的字符本身,為大寫的
A)
定義的input(int
m)
m作用的作用從代碼
printf("%s輸入一個(gè)二進(jìn)制數(shù):\n",m?"請":"輸入有誤,請重新");
中的
m?"請":"輸入有誤,請重新"
這個(gè)三目運(yùn)算符可以看出:
當(dāng)m=1時(shí)
輸出:請輸入一個(gè)二進(jìn)制數(shù):
m
!=1時(shí)
輸出:
輸入有誤,請重新輸入一個(gè)二進(jìn)制數(shù):
也就是為了提示用戶用的!
所以
這里的
n=input(1)
的
1就是說明要求系統(tǒng)提示:輸入有誤,請重新輸入一個(gè)二進(jìn)制數(shù):
新聞標(biāo)題:c語言信息錄入函數(shù) c語言 輸入函數(shù)
標(biāo)題路徑:http://chinadenli.net/article20/hejdjo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供軟件開發(fā)、小程序開發(fā)、電子商務(wù)、企業(yè)網(wǎng)站制作、網(wǎng)站設(shè)計(jì)、品牌網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)