Week12
程式大會考題目講解!!!
因為我基本上都搞懂了啦,但是我還是把我比較不懂的解析做一次,因為有些地方老師做得比較有技巧,那就開始囉~~
第一題題目:(SOIT108_Base_008) 基礎題:區間測速 : 題目內容:龜山區萬壽路1段裝設區間測速器,長度1.2公里,輸入1個整數(車輛通過該區間所行駛的秒數),輸出它的時速印出來(只印整數部分,小數部分無條件捨去)。(時速的單位是每小時幾公里( km/hour)。1小時有60分鐘,1分鐘有60秒,輸入的是秒數) 數字範圍:整數1 – 1000
程式碼:
#include <stdio.h>
int main( ){
int t;
scanf("%d",&t);
int ans=60*60*1.2/t;
printf("%d",ans);
}
第二題題目:(SOIT108_Advance_007) 進階題:區間測速-超速之王 : 題目內容:龜山區萬壽路1段裝設區間測速器,長度1.2公里,量得10輛車通過的秒數(輸入10個整數),請輸出第幾輛車最快的,並把它的時速印出來(只印整數部分,小數部分無條件捨去)。(時速的單位是每小時幾公里( km/hour)。1小時有60分鐘,1分鐘有60秒,輸入的是秒數) 數字範圍:整數1 – 1000
#include <stdio.h>
int main(){
int ansN=0;
int ansT=9999;
for(int i=1;i<=10;i++){
int nowT;
scanf("%d",&nowT);
if(nowT<ansT){
ansT=nowT;
ansN=i;
}
}
int ans=60*60*1.2/ansT;
printf("%d %d",ansN,ans);
}
第三題:YOU CAN SAY 11 (CPE)
程式碼1(KELYY版):
#include <stdio.h>
#include <string.h>
char a[1001];
int main(){
while(1){
scanf("%s",a);
if(a[0]=='0')break;
int odd=0,even=0;
for(int i=0;i<strlen(a);i++){
if(i%2==0) even +=a[i]-'0';
else odd+=a[i]-'0';
}
if((even-odd)%11!=0)printf("%s is not a multiple of 11.\n",a);
else printf("%s is a multiple of 11.\n",a);
}
}
程式碼2(老師版):
#include <stdio.h>
#include <string.h>
char a[1001];
int main(){
while(1){
scanf("%s",a);
if( strcmp(a,"0")==0 )break;
int odd=0,even=0;
for(int i=0;a[i]!=0;i++){
if(i%2==0) even +=a[i]-'0';
else odd+=a[i]-'0';
}
if( (even-odd)%11!=0 ) printf("%s is not a multiple of 11.\n",a);
else printf ("%s is a multiple of 11.\n",a);
}
}
把字母,變成數值 印出來:
程式碼:#include <stdio.h>
#include <string.h>
int main(){
char c;
scanf("%c",&c);
printf("你現在讀到字母是%c,他的值是:%d\n",c,c);
printf("小技巧:c-'0'會得到:%d\n",c-'0');
}
字串的迴圈怎麼寫:
程式碼:
#include <stdio.h>
int main(){
char line[30]="Kelly";
for(int i=0;line[i]!=0;i++){
char c=line[i];
char c=line[i];
printf("==%c==%d==\n",c,c);
}
}
}
}
程式碼:
PImage imgBird;
float birdX=250 , birdY=250 , oldX , oldY , vx=0 , vy=0;
void set up( ){
size(500,500);
imgBird = loadImage("bird.png");
imageMode(CENTER);
}
void draw(){
background(255);
image( imgBird , birdX , birdY , 100 , 100 );
if( mousePressed ) line( oldX , oldY , mouseX , mouseY);
birdX+=vx;
birdY+=vy;
}
void mousePressed( ){
oldX=mouseX; oldY=mouseY;
}
void mouseDragged( ){
birdX=mouseX; birdY=mouseY;
}
void mouseReleased(){
vx=oldX-mouseX; vy=oldY-mouseY;
}






沒有留言:
張貼留言