本人c語言現已學習到結構體
1,用指向指標的指標的方法對5個字串排序後輸出
我的答案如下:
#include#includevoid fun1(char *p,int a);
main()
; int i,j;
fun1(p,5);
for(i=0;i<5;i++)
printf("%s\n",p[i]);
}void fun1(char *p,int a)
}
本題涉及指標陣列的內容,指標陣列內的每乙個元素都是乙個指標變數,分別指向不同的字串。
注意這裡的字串位於記憶體裡的常量區,是無法改變的
同時我們也用到了乙個字元公式,即strcmp(比較兩個字串的大小)(從首字元開始比較ascii碼)
strcmp(str1,str2)
str1 > str2 則返回值大於0;
str1 < str2 則返回值小於0
str1 = str2 則返回值等於0
最後通過改變陣列內各元素的指向,就可以由小到大的將個支付串排列出來啦。
2,找到乙個二維陣列中的鞍點,即該位置上的元素在改行上最大,該列上最小,也可能沒有鞍點。
我的答案如下:#include#define n 3
main()
; int(*q)[n];
int max,min,swap,x=0,y=0;
q=a;
for(i=0;imax)
min=q[0][x];
for(j=0;j這道題太難受了,在沒有完全理解指標的情況下,只能照葫蘆畫瓢的將它晦澀的描繪出來,而且在上課的時候我還沒有完全答出來,看來是拿不到優秀了。
回去後一頓猛學,簡單的修改了一下。
修改後:#include#define n 3
void fun1(int (*q)[n]);
main()
min=q[0][x];
for(j=0;j可能起來還差不多,可是本人的思想還是發生了一定的變化的呀。
這裡用到了乙個行指標指向了我原來輸入進去的陣列,行指標狀態之下,q[i][j]=a[i][j],但要注意這裡的q!=a,因為乙個是變數,乙個是常量。
接下來的操作就簡單了呀,按原思路就可以完美解決了。
c語言程式設計(5)指標
指標是 c 語言中乙個重要的概念,也是 c 語言最精彩的部分。正確而靈活的運用它,可以是程式簡潔 緊湊 高效。指標變數是一種特殊的變數,它存放的不是資料,而是另一種變數的位址。這個存放資料的變數被稱為指標變數所指向的目標變數。由於通過指標變數中的位址可以直接訪問它指向的目標變數,常把指標變數簡稱為指...
C語言練習筆記 指標9 指標陣列
指標陣列 首先它是乙個陣列,陣列的元素都是指標,陣列佔多少個位元組由陣列本身的大小決定,每乙個元素都是乙個指標,在32 位系統下任何型別的指標永遠是佔4 個位元組。它是 儲存指標的陣列 的簡稱。陣列指標 首先它是乙個指標,它指向乙個陣列。在32 位系統下任何型別的指標永遠是佔4 個位元組,至於它指向...
C程式設計高階week5(指標2注意)
陣列中的指標 基本知識 注意b,pb,c,pc,b和pb是位址,c和pc列印出來是內容,因為是字元陣列 這段,加上那一段就列印位址了 定義指標後可以直接把字串賦給pc,但這樣就不能用pc指標修改這個字串 buffer可以賦給pc,因為都是char指標 這裡,a 1是下乙個int,a是指向陣列的指標,...