2009年11月30日 星期一

設一甲期中考題目

預備動作


1.開啟你(妳)的CodeBlacks
2.在D槽建立好『以您的學號為名稱』之Project
如圖:



3.打開『main.c』,準備開始寫程式。
如圖:



4.上傳教學
馬上會需要上傳檔案交卷,上傳方法如下圖:

題目1 - 連鎖題


請撰寫一程式能『印出』自己學號名字如『19873106張龜雅』並換行,不限方法。
(送分題,限時3分鐘)
結果如:

  19873106張龜雅

寫完請存檔,並將『整個Project』壓縮成Zip檔案傳上來。
如圖:

題目2 - 連鎖題


請接續程式,加入能夠『輸入』自己體重(公斤重)並轉換算成(牛頓)後印出的程式。
『1kg = 9.81N,體重可以亂掰』(限時5分鐘,10分)
結果如:

  19873106張龜雅
  輸入公斤重:50
  我的體重490.500000牛頓

寫完請存檔,並將『整個Project』壓縮成Zip檔案傳上來。
如圖:

題目3 - 連鎖題


請接續程式,加入一『副程式』能夠輸入自己身高(公分)並轉換成(英呎)後印出的副程式。
『1cm = 0.0328feet,身高可以亂掰』(限時10分鐘,10分)
結果如:

  19873106張龜雅
  輸入公斤重:50
  我的體重490.500000牛頓
  輸入公分:150
  我的身高4.920000英呎

寫完請存檔,並將『整個Project』壓縮成Zip檔案傳上來。
如圖:

題目4 - 連鎖題


請接續程式,並使用『for迴圈』,加入一『能夠輸入自己年齡』並印出『1~10年後我幾歲』的程式。
『年齡可以亂掰』(限時15分鐘,10分)

結果如:

  19873106張龜雅
  輸入公斤重:50
  我的體重490.500000牛頓
  輸入公分:150
  我的身高4.920000英呎
  輸入年齡:18
  1年後我19歲
  2年後我20歲
  3年後我21歲
  4年後我22歲
  5年後我23歲
  6年後我24歲
  7年後我25歲
  8年後我26歲
  9年後我27歲
  10年後我28歲

寫完請存檔,並將『整個Project』壓縮成Zip檔案傳上來。
如圖:





後面程式沒有限時囉可以慢慢寫,
5~6題非連鎖題不需要接續程式撰寫,
7~8題為連鎖題請互相參考範例程式。

題目5


請使用『副程式』加上『for迴圈』,讓使用者能『輸入X跟Y方向的個數』印出『工字型』。
(不限用什麼字排成圖形,不限時,20分)
結果如:

  請輸入x:7
  請輸入y:6
  囧囧囧囧囧囧囧
     囧
     囧
     囧
     囧
  囧囧囧囧囧囧囧

5~8題交卷只需要交上C程式檔案,檔名以學號命名一槓題號,
如:『19873106-5.c』、『19873106-6.c』、『19873106-7.c』、『19873106-8.c』

題目6


使用for迴圈,印出2009年12月份的月曆,日一二三四五六直接印出。
(不限時,20分)
結果如圖:




5~8題交卷只需要交上C程式檔案,檔名以學號命名一槓題號,
如:『19873106-5.c』、『19873106-6.c』、『19873106-7.c』、『19873106-8.c』

題目7 - 連鎖題


修改下面的範例程式,
輸出一張由『小黑點』環繞的『圓形』,並且將小黑點『換成別的顏色』,
環繞大小不拘,環繞的點數量『至少20點以上』,不限方法。

繪圖需要的檔案:bgd檔案

(不限時,20分)

//----------------範例程式開始----------------
#include <stdio.h>
#include <stdlib.h>
#include <gd/gd.h>
#include <gd/gdfontg.h>
#include <gd/gdfontt.h>
#include <gd/gdfonts.h>
#include <gd/gdfontmb.h>
#include <gd/gdfontl.h>
#include <math.h>

void star(int x,int y, int radius);

int red,orange,yellow,green,blue,cyan,purple,black,white;
float degree = 3.14159/180.;
gdImagePtr im;
FILE *in;

int main(int argc, char *argv[])
{
int j;
im = im = gdImageCreate(500, 500);

green=gdImageColorAllocate(im,128,255,0);

red=gdImageColorAllocate(im,255,0,0);
white = gdImageColorAllocate(im, 255, 255, 255);
orange=gdImageColorAllocate(im,255,128,0);
yellow=gdImageColorAllocate(im,255,255,0);

blue=gdImageColorAllocate(im,0,0,255);
cyan=gdImageColorAllocate(im,0,255,255);
purple=gdImageColorAllocate(im,255,0,255);
black = gdImageColorAllocate(im, 0, 0, 0);

star(100,100,30);

in = fopen("gdimage.png", "wb");
if (!in) {
printf("cannot open < gdimage.png for writing\n");
return 1;
}
gdImagePng(im, in);
fclose(in);
gdImageDestroy(im);
return 0;
}

void star(int x,int y, int radius)
{
gdImageFilledEllipse(im, x, y, radius, radius, black);
}

//----------------範例程式結束----------------

5~8題交卷只需要交上C程式檔案,檔名以學號命名一槓題號,
如:『19873106-5.c』、『19873106-6.c』、『19873106-7.c』、『19873106-8.c』

題目8 - 連鎖題


修改題目7的程式,並參考下面的程式,
將題目7中的圖片顯示在網頁上(*.htm),
並將小黑點的座標也輸出到網頁(*.htm)檔案,
請輸出至少20個點以上。
(不限時,20分)

說明:
『<br>』是Html語言的換行語法
『<img src=gdimage.png>』是Html語言的顯示圖片語法

//----------------範例程式開始----------------
#include<stdio.h>
#include<string.h>

int main()
{
char file[40];
char end[40] = ".htm";
FILE *outfile;
printf ( "Please input a file name: " );
scanf ( "%s" , file );
strcat ( file , end );

outfile = fopen ( file , "wb" );
fprintf(outfile, "Welcome to Facebook!!<br>\n");
fprintf(outfile, "There are restaurant city<br>\n");
fclose(outfile);
return 0;
}
//----------------範例程式結束----------------



Htm網頁檔案的範例內容如(範例為18個點,但請你輸出至少20個點以上):

  <img src=gdimage.png><br>
  Coordinates 1 (284.201996,343.969269)<br>
  Coordinates 2 (314.278717,326.604492)<br>
  Coordinates 3 (336.602509,300.000092)<br>
  Coordinates 4 (348.480743,267.364929)<br>
  Coordinates 5 (348.480804,232.635330)<br>
  Coordinates 6 (336.602631,200.000153)<br>
  Coordinates 7 (314.278931,173.395691)<br>
  Coordinates 8 (284.202240,156.030823)<br>
  Coordinates 9 (250.000275,150.000000)<br>
  Coordinates 10 (215.798264,156.030640)<br>
  Coordinates 11 (185.721497,173.395340)<br>
  Coordinates 12 (163.397644,199.999695)<br>
  Coordinates 13 (151.519287,232.634796)<br>
  Coordinates 14 (151.519150,267.364410)<br>
  Coordinates 15 (163.397232,299.999603)<br>
  Coordinates 16 (185.720871,326.604126)<br>
  Coordinates 17 (215.797501,343.969086)<br>
  Coordinates 18 (249.999466,350.000000)<br>

範例圖片:



5~8題交卷只需要交上C程式檔案,檔名以學號命名一槓題號,
如:『19873106-5.c』、『19873106-6.c』、『19873106-7.c』、『19873106-8.c』

沒有留言:

張貼留言