作廢?主()
{
int?k?=?0;
夏爾?ch,?a[10],?*s[10]?=?{?"123","231","312","321"?};//定義字符?字符串?字符串數組變量
什麽時候?((ch?=?getchar())?!=?\n '?& amp& amp?k?& lt?9)//循環讀取字符?先把讀取的字符放入ch變量?然後判斷是不是換行?如果字符不是換行符?並且讀取的字符數小於9?繼續循環。
如果?(ch?& gt=?'5'?& amp& amp?ch?& lt=?8')//如果讀取的字符在5到8之間,
a[k++]?=?ch;//將字符記錄到A字符變量數組中?k是字符串長度?k++?是否要先返回原始值?那麽加1相當於?a[k]= ch;k = k+1;
壹個[k]?=?'\0';//在A字符串後面放壹個結束標記。
為了什麽?(k?=?0;?壹個[k]?!=?'\0';?K++)//循環壹個字符串內容
printf("%s?",?s[('9 '?-?a[k])?-?1]);//輸出?用1的值從讀取的字符中減去字符9?作為S字符串數組的索引?
/*
輸出過程
比如,進入了?567?保存在a字符串中
那又怎樣?循環如下
Index =9-5-1?=?三
看壹看?S字符串的3索引下的值是什麽?是321嗎?那麽輸出呢?321
然後下壹個周期
Index =9-6-1?=?2
看壹看?S字符串的2索引下的值是什麽?是312嗎?那麽輸出呢?312
然後下壹個周期
Index =9-7-1?=?1
看壹看?S字符串在索引1處的值是多少?是231嗎?那麽輸出呢?231
所以輸入567?之後?結果是?321?312?231
*/
scanf("%d ",& ampk);
} #包含?& ltstdio.h & gt
#包含?& ltstring.h & gt
struct?種馬?{
夏爾?名稱[10];
int?得分[2];
} * p;
作廢?主()
{
int?我?=?0;
struct?種馬?t[4]?=?{?{?《麗莎》,98,87?},{?《湯姆》,89,86?},{?“約翰”,68,79?},{?《麗麗》,94,90?}?};//定義結構變量數組t?和初始化數據。
p?=?t?+?2;//p結構指針等於t加2。
printf("%s?\n“,?t[0]。姓名);//輸出名稱結果
printf("%d\n ",p->;評分[0]?+?p->;得分[1]);//輸出兩個分數的和。
printf("%d\n ",t[2]。評分[0]?+?t[2]。得分[1]);//這個和上面的結果壹樣,上面只是壹個指針操作。
scanf("%d ",& ampI);
}