版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、C語言實(shí)訓(xùn)教程 -輸入輸出專項(xiàng)練習(xí)一、 實(shí)驗(yàn)?zāi)康?. 能夠熟練并正確定義、輸入、輸出并使用常用數(shù)據(jù)類型:整型、實(shí)型、字 符型2. 能夠使用scanf(),printf(),getchar(),putchar(),gets(),puts()進(jìn)行各種數(shù)據(jù)正確格式的輸入輸 出二、 實(shí)驗(yàn)內(nèi)容及實(shí)驗(yàn)步驟(一) 驗(yàn)證性試驗(yàn),驗(yàn)證以下實(shí)驗(yàn),并分析實(shí)驗(yàn)結(jié)果1. 用下面的scanf函數(shù)輸入數(shù)據(jù),使a=3,b=7,x=8.5,y=71.82,c1=A,c2=a,問在鍵盤上如何輸入數(shù)據(jù)?#include<stdio.h>int main()int a,b;float x,y;char c1,c2;sca
2、nf(“a=%d b=%d”,&a,&b);scanf(“%f%e”,&x,&y);scanf(“%c%c”,&c1,&c2);printf("a=%d,b=%d,x=%f,y=%f,c1=%c,c2=%cn",a,b,x,y,c1,c2);return 0;運(yùn)行時(shí)分別按以下方式輸入數(shù)據(jù),觀察輸出結(jié)果,分析原因。 a=3,b=7,x=8.5,y=71.82,A,a a=3,b=-858993460,x=-107374176.000000,y=-107374176.000000,c1=,c2=bPress any key to
3、continue a=3 b=7 x=8.5 y=71.82 A a a=3 b=7 8.5 71.82 A a a=3 b=7 8.5 71.82Aa 3 7 8.5 71.82Aa a=3 b=78.5 71.82Aa a=3 b=78.5 71.82Aa a=3 b=78.5 71.82Aa原因:“ ,”號(hào)、enter鍵都會(huì)被當(dāng)做值給輸入進(jìn)去。2. 字符輸入#include <stdio.h>main() int a; char b; float c; printf("Please input an integer:"); scanf("%d&q
4、uot;, &a); printf("integer: %dn", a); printf("Please input a character:"); scanf("%c", &b); printf("character: %cn", b); printf("Please input a float number:"); scanf("%f", &c); printf("float: %fn", c); 如果把scanf("
5、%c", &b);改為scanf("%1s", &b);觀察運(yùn)行結(jié)果原因:發(fā) 3. 驗(yàn)證格式輸入#include <stdio.h>void main() int a, b; printf("Please input a and b:"); scanf("%2d%*2d%2d", &a, &b); printf("a=%d, b=%d, a+b=%dn",a,b,a+b);(1)輸入123456,驗(yàn)證上述實(shí)驗(yàn)結(jié)果(2)輸入12345a, 驗(yàn)證上述實(shí)驗(yàn)結(jié)果4. 格
6、式輸入與輸出#include <stdio.h>main() int a=-1; printf ("%d,%o, %x",a,a, a); printf("%8o, %12x",a, a); 驗(yàn)證程序分析實(shí)驗(yàn)結(jié)果5. 無符號(hào)數(shù)據(jù)的輸出 #include<stdio.h>void main()unsigned int a=65535;int b=-2;printf(“a=%d,%o,%x,%un”,a,a,a,a);printf(“b=%d,%o,%x,%un”,b,b,b,b);驗(yàn)證程序分析實(shí)驗(yàn)結(jié)果6. 字符串的輸出#includ
7、e<stdio.h>void main()printf(“%3s,%7.2s,%.4s,%-5.3sn”, “CHINA”, “CHINA”, “CHINA”, “CHINA”);驗(yàn)證程序分析實(shí)驗(yàn)結(jié)果%3s,格式輸出字符串,右對(duì)齊,超出3個(gè)長(zhǎng)度的,就全部輸出;%7.2s,輸出字符串占7個(gè)位置,有對(duì)齊,左補(bǔ)空格,輸出2個(gè)字符;%.4s,僅輸出4個(gè)字符,占位4個(gè)位置,右對(duì)齊;%-5.3s:輸出3個(gè)字符,占位5個(gè)位置,左對(duì)齊右補(bǔ)空格.7. 輸出實(shí)數(shù)時(shí)的有效位數(shù)#include <stdio.h>void main() float x,y;3x=111111.111;y=222
8、222.222;prinft(“%f”,x+y); 驗(yàn)證程序分析實(shí)驗(yàn)結(jié)果8. 輸出雙精度數(shù)時(shí)的有效位數(shù)#include <stdio.h>void main()double x,y;x=1111111111111.111111111; y=2222222222222.222222222;printf(“%f”,x+y);驗(yàn)證程序分析實(shí)驗(yàn)結(jié)果9. 輸出實(shí)數(shù)時(shí)指定小數(shù)位數(shù)#include <stdio.h>void main()float f=123.456;printf(“%f%10f%10.2f%.2f%-10.2fn”,f,f,f,f,f);驗(yàn)證程序分析實(shí)驗(yàn)結(jié)果10.
9、 字符輸出#include <stdio.h>int main(void) int c; for ( ; ; ) c = getchar();if (c = EOF) break;if (c >= a) && (c <= z) c += A - a; putchar(c); return 0; (1)對(duì)比下列五種代碼,將4-7、10行代碼替換如下,程序應(yīng)該如何修改才能保持輸出結(jié)果相同?for (c=getchar(); c!=EOF; c=getchar() putchar(c);(2)將4-7、10行代碼替換如下,程序應(yīng)該如何修改才能保持輸出結(jié)果相同?
10、while (c=getchar()!=EOF) putchar(c);(3)將4-7、10行代碼替換如下,程序應(yīng)該如何修改才能保持輸出結(jié)果相同?c = getchar(); while (c!=EOF) putchar(c); c = getchar(); (4)如果用ASCII碼修改if (c >= a) && (c <= z); c += A - a;這兩句代碼,應(yīng)該如何修改?(5) 利用ctype函數(shù)修改上面代碼,驗(yàn)證程序結(jié)果#include <stdio.h>#include <ctype.h>int main(void) int
11、c; for ( ; ; ) c = getchar(); if (c = EOF) break; if (islower(c) c = toupper(c); putchar(c); return 0;11. 轉(zhuǎn)義符輸出#include <stdio.h>void main ( ) printf("ab ct derftgn");printf(“htibbjkn”);驗(yàn)證程序分析實(shí)驗(yàn)結(jié)果12. 字符串輸入輸出,連續(xù)輸入三個(gè)單詞,每個(gè)單詞以空格分隔#include <stdio.h>void main ( ) char str15,str25,str
12、35;scanf(”%s%s%s”,str1,str2,str3);printf("%s %s %s", str1,str2,str3);驗(yàn)證程序分析實(shí)驗(yàn)結(jié)果(二)編程題1. 編寫printf函數(shù)調(diào)用下列格式來顯示float型變量x:a) 指數(shù)表示形式: 最小為8的字段寬度內(nèi)左對(duì)齊; 小數(shù)點(diǎn)后保留1位數(shù)字.b) 指數(shù)表示形式: 最小為10的字段寬度內(nèi)右對(duì)齊; 小數(shù)點(diǎn)后保留6位數(shù)字c) 定點(diǎn)十進(jìn)制表示形式: 最小為8的字段寬度內(nèi)左對(duì)齊; 小數(shù)點(diǎn)后保留3位數(shù)字d) 定點(diǎn)十進(jìn)制表示形式: 最小為6的字段寬度內(nèi)右對(duì)齊; 小數(shù)點(diǎn)后無數(shù)字.#include "stdafx.h
13、"main()float x;x=0.00001;printf("%-8.1en",x,x,x);/*最小為8的字段寬度內(nèi)左對(duì)齊; 小數(shù)點(diǎn)后保留1位數(shù)字./printf("%10.6en",x);/*最小為10的字段寬度內(nèi)右對(duì)齊; 小數(shù)點(diǎn)后保留6位數(shù)字/printf("%-8.3dn",x);/*最小為8的字段寬度內(nèi)左對(duì)齊; 小數(shù)點(diǎn)后保留3位數(shù)字/printf("%6un",x);/* 最小為6的字段寬度內(nèi)右對(duì)齊; 小數(shù)點(diǎn)后無數(shù)字./return 0;2. 設(shè)計(jì)程序使得用戶可以以任意字符(回車、空格、制表
14、符、逗號(hào)、其它)作為分隔符進(jìn)行數(shù)據(jù)的輸入#include "stdafx.h"main() int a,b;printf("please input a date:");scanf("%d%*c%d",&a,&b);printf("%dt%d",a,b);return 0;3. 編寫一個(gè)程序, 接收用戶錄入的日期信息并且將其顯示出來. 其中, 輸入日期的形式為月/日/年(mm/dd/yy), 輸出日期的形式為年月日(yymmdd)#include "stdafx.h"main()
15、 int year,month,day;printf("please input the date:month,day,yearn");scanf("%d%d%d",&month,&day,&year);printf("%d/%d/%dn",year,month,day);return 0;4. 有3個(gè)字符串,要求找出其中最大者#include "stdafx.h"#include<string.h>main() char str120,str220;int a;printf(&
16、quot;please input the str1 and str2:n");gets(str1);gets(str2);if(strcmp(str1,str2)>0) printf("str1>str2");elseprintf("str1<str2"); return a; #include "stdafx.h"#include<string.h>#include<stdio.h>main() char str120,str220,str320;int a;printf(&qu
17、ot;please input the str1,str2 and str3:n");gets(str1);gets(str2);gets(str3); a=strcmp(str1,str2);if(a>0) if(strcmp(str1,str3)>0)printf("str1>str2,str1>str3nstr1 is max stringn");else printf("str1>str2,str1<str3n str3 is max stringn");elseif(str2,str3>0)
18、printf("str2>1,str2>str3,nstr2 is max stringn");else printf("str2>str1,str3>str2n str3 is max stringn");return a; 5. 編寫一個(gè)程序, 對(duì)用戶錄入的產(chǎn)品信息進(jìn)行格式化, 程序運(yùn)行后需要有以下會(huì)話:Enter item number: 583Enter unit price: 13.5Enter purchase date(mm/dd/yy): 10/24/95Item Unit Price Purchase Date5
19、83 $ 13.50 10/24/95其中, 數(shù)字項(xiàng)和日期項(xiàng)左對(duì)齊, 單位價(jià)格右對(duì)齊, 美元數(shù)量最大取值為9999.99#include "stdafx.h"#include <stdio.h>main()int num_ber;int mm,dd,yy;float Unitprice;printf("請(qǐng)輸入itemnum_ber:number=583t");scanf("%d",&num_ber);printf("請(qǐng)輸入U(xiǎn)nitprice:Unit price=13.5t");scanf(&q
20、uot;%f",&Unitprice);printf("請(qǐng)輸入日期mm/dd/yy=10/24/95");scanf("%d/%d/%dt",&mm,&dd,&yy);printf("ItemnumbertUnit PricetPurchase Date ");printf("%4dt%ft%3d/%3d/%3d,num_ber,UnitPrice,mm,dd,yy ");return 0;6. 計(jì)算若干整數(shù)的值,要求輸入有若干行,每行第一個(gè)整數(shù)n,代表后面還有n個(gè)數(shù)據(jù),如
21、果n=0代表輸入結(jié)束。輸出:要求對(duì)于每一行都要在相應(yīng)的行輸出和。#include "stdafx.h"#include <stdio.h>main()int m,n,i,j,sum=0;int a55;scanf("%d",&m);if(m=0) printf("ÊäÈë½áÊøn");else for(i=0;i<m;i+)for(j=0;j<m;j+)scanf("%d",&aij);a00=m;for(i=0;i<m;i+)for(j=0;j<m;j+)printf("%dt",aij);printf("n");for(i=0;i<m;i+)for(j=0;j<m;j+)sum=sum+aij;printf("sum=%dn",sum);sum=0;7. 編程實(shí)現(xiàn)如下程序,輸入Bb a=7b=6 96.37并輸出,每個(gè)數(shù)據(jù)以逗號(hào)分隔,每個(gè)數(shù)據(jù)寬度為10,浮點(diǎn)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度智能家居加盟品牌授權(quán)合同3篇
- 二零二五年度新能源儲(chǔ)能系統(tǒng)購(gòu)買合同3篇
- 二零二五年度林業(yè)人才培養(yǎng)合作造林協(xié)議3篇
- 2025年度老舊房屋漏水檢測(cè)與賠償專項(xiàng)協(xié)議3篇
- 2025年度股東退出與公司知識(shí)產(chǎn)權(quán)保護(hù)合同3篇
- 二零二五年度模特服裝租賃拍攝合同3篇
- 2025年度房地產(chǎn)公司合伙人項(xiàng)目合作協(xié)議3篇
- 二零二五年度循環(huán)水養(yǎng)殖養(yǎng)魚合作合同3篇
- 2025年度體育場(chǎng)館物業(yè)用房移交及賽事運(yùn)營(yíng)服務(wù)合同3篇
- 2025年度企業(yè)年會(huì)活動(dòng)宣傳片制作服務(wù)合同模板3篇
- 普通高校本科招生專業(yè)選考科目要求指引(通用版)
- 基坑工程監(jiān)控方案
- 中考生物試驗(yàn)操作評(píng)分參考標(biāo)準(zhǔn)
- 國(guó)家開放大學(xué)電大本科《國(guó)際私法》期末試題及答案(n試卷號(hào):1020)
- 四川省德陽市中學(xué)2023年高一物理上學(xué)期期末試卷含解析
- 舉高消防車基礎(chǔ)知識(shí)
- 空氣、物表地面消毒登記記錄
- 急性腦梗死診治指南
- 檢察院分級(jí)保護(hù)項(xiàng)目技術(shù)方案
- 土木工程建筑中混凝土裂縫的施工處理技術(shù)畢業(yè)論文
- 水電站工程地質(zhì)勘察報(bào)告
評(píng)論
0/150
提交評(píng)論