2020.4.10
1.
為了因應討人厭的武漢肺炎,現在學校開始陸陸續續的加入teams這個軟體,讓大家在家也可以上到課,所以今天的第一步就是檢查電腦和手機可不可以正常使用使用電腦:
手機:
2.
今天的第一個正題是學習如何用指標,好感動阿,終於學習了它,而不是那個很簡單的在那邊畫圓,所以我應該認真的好好學習用!!!
程式碼:#include <stdio.h>
int main() {
int a=100;
int b=200;
int *p; ///宣告一個指標
p=&a;
printf("%d\n",*p);
p=&b;
printf("%d\n",*p);
return 0;
}
3.1
好吧,才學一題又回到畫圓了(誤,現在學的是要讓我們倆姊怎麼按一下鍵會變成不同的圖,以下為其中所使用的圖

程式碼:
PImage img1;
PImage img2;
PImage img3;
PImage img;
void setup(){
size(300,300);
img1=loadImage("img1.png");
img2=loadImage("img2.png");
img3=loadImage("img3.png");
img=img1; ///現在用的是哪個圖
}
void draw(){
image(img,100,100); ///一開始會有一張圖
}
void keyPressed(){
if(keyCode==RIGHT)img=img3; ///按一下右鍵會變成右圖
if(keyCode==LEFT)img=img2;///按一下左鍵會變成左圖
}
void keyReleased(){
img=img1; ///放掉按鍵會變成原圖
}
3.2
因為光是變左右實在是太無聊了,所以小葉老師教我們讓它移動,請看以下的程式碼
程式碼:PImage img1;
PImage img2;
PImage img3;
PImage img;
float x=100,y=100,vx=0; ///變數
void setup(){
size(300,300);
img1=loadImage("img1.png");
img2=loadImage("img2.png");
img3=loadImage("img3.png");
img=img1;
}
void draw(){
background(255);///背景為白色
image(img,x,y);
x+=vx; ///有速度變數
}
void keyPressed(){
if(keyCode==RIGHT){
img=img3;
vx=1; ///按右鍵往右
}
if(keyCode==LEFT){
img=img2;
vx=-1;///按左鍵往左
}
}
void keyReleased(){
img=img1;
vx=0; ///放開後速度變0
}
4.1
在進階一點,就是讓圖片更生動一點,讓它有彈跳的感覺,所以我用了可愛的蠟筆小新XD
程式碼: PImage img1;
PImage img;
float x=100,y=100,vx=0,vy=-10; ///變數,vy是先往上
void setup(){
size(300,300);
img1=loadImage("crown.png");
img=img1;
}
void draw(){
background(255);
image(img,x,y,100,100);
x+=vx;///有速度
y+=vy;
vy+=0.98;///重力加速度,加到速度上面,變慢的意思
if(y>=200) vy=-vy*0.9;///反彈然後談的幅度變小
}
4.2
接下來讓它左右跳PImage img;
float x=100,y=100,vx=3,vy=-10;
void setup(){
size(400,400);
img=loadImage("crown.png");
}
void draw(){
background(255);
image(img,x,y);
x+=vx;
y+=vy;
vy+=0.98;
if(y>200)vy=-vy*0.9;
if(x>300)vx=-vx;///碰到牆
if(x<0)vx=-vx;///碰到牆
}
5.
指標講解,因為很簡單,所以自己看吧
程式碼:
#include <stdio.h>
int a[10]={9,8,7,6,5,4,3,9,3};
int b[10]={1,3,5,7,9,8,7,7,7};
int *p;
int main() {
p=a;
printf("%d",p[3]);
p=b;
printf("%d",p[3]);
return 0;
}









沒有留言:
張貼留言