上海电力大学c语言程序设计章测试,上海电力学院c语言报告:实验8 指针.doc
上海電力學(xué)院c語言報(bào)告:實(shí)驗(yàn)8 指針.doc
下載提示(請認(rèn)真閱讀)1.請仔細(xì)閱讀文檔,確保文檔完整性,對于不預(yù)覽、不比對內(nèi)容而直接下載帶來的問題本站不予受理。
2.下載的文檔,不會出現(xiàn)我們的網(wǎng)址水印。
3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請點(diǎn)此認(rèn)領(lǐng)!既往收益都?xì)w您。
文檔包含非法信息?點(diǎn)此舉報(bào)后獲取現(xiàn)金獎勵!
下載文檔到電腦,查找使用更方便
15
積分
還剩頁未讀,繼續(xù)閱讀
關(guān)?鍵?詞:上海電力學(xué)院c語言報(bào)告:實(shí)驗(yàn)8
指針
上海
電力
學(xué)院
語言
報(bào)告
實(shí)驗(yàn)
資源描述:
上海電力學(xué)院
實(shí)驗(yàn)報(bào)告
課程名稱 C語言程序設(shè)計(jì) 實(shí)驗(yàn)名稱 實(shí)驗(yàn)8 指針
姓名 蔡福瑞 學(xué)號 20101419 班級 2010027
專業(yè) 電氣工程及其自動化(供用電技術(shù)方向)
同組人姓名 蔡福瑞、黃任憑、龔奕磊、傅慶燕、程旭
指導(dǎo)老師姓名 魏為民 實(shí)驗(yàn)日期 2010-12-27
一、實(shí)驗(yàn)?zāi)康?/p>
1、通過實(shí)驗(yàn)進(jìn)一步掌握指標(biāo)的概念,會定義和使用指針變量。
2、能正確使用數(shù)組的指針和指向數(shù)組的指針變量。
3、能正確使用字符串的指針和指向字符串的指針變量。
二、實(shí)驗(yàn)內(nèi)容和步驟
1、改錯(cuò)
(1)指出下面程序錯(cuò)誤的原因.
main()
{
int x=10,y=5,*px ,*py;
px=py;
px=&x’;
printf (“*px=%d, *py=%d, *px ,*py);
}
圖(8-1)
該程序運(yùn)行的整個(gè)過程如圖(8-2)所示。
錯(cuò)誤的原因:printf(”*px=%d,*py=%d, *px, *py);該行此處少了個(gè)引號。
修改后,運(yùn)行結(jié)果如圖(8-3)所示:
圖(8-2)
圖(8-3)
(2)下面的程序試圖有如下運(yùn)行結(jié)果:
Which style you want to:
Capital (c) or uncapital (a):c ↙
COMPUTER
Which style you want to:
Capital (c) or uncapital(a):u ↙
圖(8-4)
請調(diào)試下面的程序,使其有如上執(zhí)行結(jié)果.
#include
main()
{ char s*;
char c;
printf(“which style you want to :ln”);
printf(“capital(c) or uncapital(a):”);
c=getchar();
if(c=’c’) strcpy(s,”COMPUTER”);
else strcpy(s,”computer”);
put(s)
}
圖(8-5)
該程序運(yùn)行的整個(gè)過程如圖(8-6)所示。
錯(cuò)誤的原因:缺少庫函數(shù);指針格式錯(cuò)誤; 回車的控制符為 \n ; ‘=’為賦值運(yùn)算符,‘=='才是關(guān)系運(yùn)算符;put只能輸出一個(gè)字符,puts才能輸出字符串。
修改后,運(yùn)行結(jié)果如圖(8-7)所示:
圖(8-6)
圖(8-7)
(3)下面的程序能獲得上述運(yùn)行結(jié)果嗎?
main()
{
char *S=”COMPUTER”;
char c;
printf(“which style you want to \n”);
printf(“capital(c) or uncapital(U):”);
c=getchar();
if(c=’c’)
put(s);
else
{ s=”computer”;
puts(s);
}
}
圖(8-8)
該程序運(yùn)行的整個(gè)過程如圖(8-9)所示。
錯(cuò)誤的原因:①if(’c=c’)中‘=’為賦值運(yùn)算符,‘=='才是關(guān)系運(yùn)算符;②put語句只能輸出一個(gè)字符,puts語句才能輸出字符串。
修改后,運(yùn)行結(jié)果如圖(8-10)所示:
圖(8-9)
圖(8-10)
(4)設(shè)計(jì)一個(gè)C程序,用以測試下列各表達(dá)式的運(yùn)算。
1)y=*px++; 2)y=*++py 3)y=(*py)++ 4)y=--*ppx++
圖(8-11)
圖(8-12)
(5)想使指針變量pt1指向a 和b中的大者,pt2指向小者,一下程序能否實(shí)現(xiàn)此目的。
swap(int *p1,int *p2)
{
int *p;
p=p1;p1=p2;p2=p;
}
main()
{ int a,b;
scanf (“%d,%d”,&a,&b);
pt1=&a;pt2=&b;
if(avoid main()
{ int a[10],i,max;
for(___________)
scanf(“%d”,______________);
for ( ___________ )
if ( ) max=a[i];
printf(“MAX=%d\n”,max);
}
圖(8-17)
圖(8-18)
數(shù)組名法:如圖(8-19) 與運(yùn)行結(jié)果:如圖
#include void main()
{ int a[10],i,max;
for( _________ )
scanf(“%d”,a+i);
for( _________ )
if( _________ ) max=*(a+i);
printf(“MAX=%d\n”,max);
}
圖(8-20)
圖(8-21)
指針法:圖(8-22)
#include void main()
{ int a[10];
int *p,max;
for( ________ )
scanf(“%d”,p);
for( _______ )
圖(8-23)
if( _______ ) max=*p;
printf(“MAX=%d\n”,max);
}
圖(8-24)
(2)字符串和字符指針。輸入一個(gè)字符串,將其中的大寫字母轉(zhuǎn)換成小寫字母,然后輸出。
字符數(shù)組實(shí)現(xiàn):
#include void main()
{
char s[20];int i;
gets( _________ );
for( __________ );
if( ___________ ) s[i]=s[i]+‘a(chǎn)’-‘A’;
i=0;
while( _________ )
{ printf(“%c”,s[i]);_______________ }
}
圖(8-25)
圖(8-26)
圖(8-27)
提示;scanf()輸入是時(shí)遇到空格認(rèn)為字符串結(jié)束,用gets()輸入時(shí)只有遇到回車才認(rèn)為字符串結(jié)束。如鍵入any boy 并回車,則
scanf(“%s”,s)的結(jié)果為:
a
n
y
\0
gets(s)的結(jié)果為:
a
n
y
b
o
y
\0
三、編程序并上機(jī)調(diào)試運(yùn)行程序(都要求指針處理)。
(1)輸入三個(gè)整數(shù),按有效到大的順序輸出,然后將程序改為:輸入三個(gè)字符串,按由小到大順序輸出。
整數(shù)輸入:圖(8-28)
#include main()
{ int n1,n2,n3;
int *p1,*p2,*p3;
printf(“Please enter three numbers:”);
scanf("%d,%d,%d",&n1,&n2,&n3);
p1=&n1;
p2=&n2;
p3=&n3;
if(n1>n2)swap(p1,p2);
if(n1>n3)swap(p1,p3);
if(n2>n3)swap(p2,p3);
printf(“%d,%d,%d\n",*p1,*p2,*p3);
}
swap(int *p1,int *p2)
{ int p;
p=*p1;
*p1=*p2;
*p2=p;
}
圖(8-29)
圖(8-30)
三、實(shí)驗(yàn)結(jié)論與體會
(1)指針可以簡單地稱為“地址”。
(2)在定義指針變量時(shí)必須指定類型。
(3)指針變量前面的“*”表示該變量的類型為指針型變量。
(4)整常數(shù)只能賦給整型變量,而不能賦給指針變量。
(5)*(p+i)或*(a+i)是p+i或a+i所指向的數(shù)組元素,即a[i]。
我從指針是什么開始,到指針變量,我還學(xué)習(xí)指針引用數(shù)組、字符串,并且掌握了指向指針函數(shù),經(jīng)過老師得諄諄教導(dǎo),我不僅了解、學(xué)會返回指針的函數(shù)、指針數(shù)組、和多重指針、以及動態(tài)內(nèi)存分配與指向它的指針變量,剛開始時(shí)一知半解,完全處于糊涂的狀態(tài),經(jīng)過老師的指點(diǎn),與自己的琢磨,反復(fù)思考,逐漸的了解、弄懂!
只要我們努力學(xué)習(xí),一定會有收獲!
這段時(shí)間感謝老師的教導(dǎo)與幫助,以及對我的關(guān)懷!
2010027 蔡福瑞
展開閱讀全文
溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
?
人人文庫網(wǎng)所有資源均是用戶自行上傳分享,僅供網(wǎng)友學(xué)習(xí)交流,未經(jīng)上傳用戶書面授權(quán),請勿作他用。
關(guān)于本文
本文標(biāo)題:上海電力學(xué)院c語言報(bào)告:實(shí)驗(yàn)8 指針.doc
鏈接地址:https://www.renrendoc.com/p-45437363.html
總結(jié)
以上是生活随笔為你收集整理的上海电力大学c语言程序设计章测试,上海电力学院c语言报告:实验8 指针.doc的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【机器学习】5行代码在小数据集上涨点
- 下一篇: NLP面试时,项目经历要怎么讲?