RSS   



  可打印版本 | 推薦給朋友 | 訂閱主題 | 收藏主題 | 純文字版  


 
 17  1/2  1  2  > 


 
主題: [資訊電機] [問題]新c++的問題(作業)   字型大小:||| 
vacakadi
青銅驢友
等級: 11等級: 11等級: 11等級: 11
被驢騎的騎士。

十週年紀念徽章(六級)  

 . 積分: 265
 . 文章: 429
 . 收花: 1837 支
 . 送花: 1349 支
 . 比例: 0.73
 . 在線: 1090 小時
 . 瀏覽: 44704 頁
 . 註冊: 7418
 . 失蹤: 47
 . taiwan
#1 : 2004-9-18 01:10 AM     只看本作者 引言回覆

你是一個學生嗎?( Y or N )
打Y的話
你讀幾年級?
打上"數字"
你是"數字"年級的學生。
打N的話
你不是學生。
打任一個字,不是Y或N,
會出現
你輸入錯誤。

不知道這樣寫對不對,有人可以幫我看嗎?

#include <stdio.h>
int main(void)
{char st;
  int age;
  printf("你是一個學生嗎?(Y orN)");
  scanf("%c", &st);
  printf("你讀幾年級?");
  scanf("%d", &age);
  if (st=='Y' || st=='y')
  {
    printf("你是%d年級學生\n",age);
   }
   else
   if (st=='N' || st=='n')
   {
     printf("你不是學生。\n");
   }
   else
   if(st!='Y' || st!='y' || st!='N' || st!='n")
   {
     printf("你輸入錯誤。\n);
   }
   else
   return 0;
}

這樣對嗎?
剛學程式,都不會寫。
可有人幫修改,感激不盡。

========================================================
上回的已經結束了,
不過這一次老師出的作業真是難耶,
上課也是聽不懂,(鴨子聽雷阿。)
真是糟糕。
懂得人可以敎我寫嗎?

範例一:
#include <stdio.h>
#include <conio.h>
int main(void)
{int i,j,k,l=0;
  for(i=1;i<=15;i++)
  {gotoxy 5,i);  <------註:這個意思不懂
     printf("|");
    for(k=0;k<100000000;k++)
    l*=2;}
  {for (i=0;i<30;i++)  <-------這各應該是"j"吧!我覺得老師寫錯了吧!
     {gotoxy(5+i,15);
      printf("==>");
      for(k=0;k<100000000:k++)
      l*=2}
  gotoxy(80,1);
  return 0;}
會跑出"|"再來變成"==>"
最後畫面
|
|
|
|
|
|
============>

範例二:
直接寫中間檔。
{int ch;
  do{gotoxy(30,13);
       printf("press Q to quit...\n");
       ch= getch();}
   while(ch!='Q' && ch!='q');
   return 0;}
就是畫面出現" press Q to quit..."
按任何鍵都不會跳出,
要按"Q"或"q",才會跳出。

﹝作業要求,利用兩個寫法來做出"s"的作業。
    畫面中會出現一個"s"的字,
    當你按"W"鍵,他會往上跑,到達頂點後就會停住。
    當你按"X"鍵,他再會往下跑,到達底後就會停住。
    當你按"A"鍵,他會往左跑,到達左邊的邊邊 後就會停住。
    當你按"D"鍵,他會往右跑,到達右邊的邊邊 後就會停住。
    就是"CS"的控制一樣,
    當你按到其他鍵也都不會跳出,只是不會跑,
    可是當你按到"Q"鍵,他就會跳出。﹞
就就是作業題目。
我是有看沒有懂啦!也不會寫,誰能教導我阿。

[vacakadi 在 2004-9-28 10:05 PM 作了最後編輯]



[如果你喜歡本文章,就按本文章之鮮花~送花給作者吧,你的支持就是別人的動力來源]
本文連接  
檢閱個人資料  發私人訊息  Blog  新增/修改 爬文標記
leon1206
鐵驢友〔高級〕
等級: 6等級: 6
色即是空

今日心情

 . 積分: 74
 . 文章: 587
 . 收花: 197 支
 . 送花: 103 支
 . 比例: 0.52
 . 在線: 3197 小時
 . 瀏覽: 19855 頁
 . 註冊: 7362
 . 失蹤: 2160
#2 : 2004-9-18 01:27 AM     只看本作者 引言回覆

你這樣寫的話 不管一開始打Y或是N
都會印出 你讀幾年級?
應該先判斷才是 我稍微改了一下你的程式 改的不好的話請見諒

#include
void main()
{
char st;
  int age;
  printf("你是一個學生嗎?(Y orN)");
  scanf("%c", &st);
   if (st=='Y' || st=='y')
  {
    printf("你讀幾年級?");
    scanf("%d", &age);
    printf("你是%d年級學生\n",age);
   }
   else
   if (st=='N' || st=='n')
   {
     printf("你不是學生。\n");
   }
   else
   {
     printf("你輸入錯誤。\n);
    }
}



[如果你喜歡本文章,就按本文章之鮮花~送花給作者吧,你的支持就是別人的動力來源]
本文連接  
檢閱個人資料  發私人訊息  Blog  新增/修改 爬文標記
vacakadi
青銅驢友
等級: 11等級: 11等級: 11等級: 11
被驢騎的騎士。

十週年紀念徽章(六級)  

 . 積分: 265
 . 文章: 429
 . 收花: 1837 支
 . 送花: 1349 支
 . 比例: 0.73
 . 在線: 1090 小時
 . 瀏覽: 44704 頁
 . 註冊: 7418
 . 失蹤: 47
 . taiwan
#3 : 2004-9-18 03:02 AM     只看本作者 引言回覆

感謝你,這個我也有想過,
可是不知下面要如何寫,所以ㄧ直有錯誤,
所以想說用最原始想法,可是邏輯錯誤,感謝你的指教,
送你壹朵花。
我會變強的。



[如果你喜歡本文章,就按本文章之鮮花~送花給作者吧,你的支持就是別人的動力來源]
本文連接  
檢閱個人資料  發私人訊息  Blog  新增/修改 爬文標記
Vic
開墾隊隊長.苦力
等級: 32等級: 32等級: 32等級: 32等級: 32等級: 32等級: 32等級: 32
老得不能再稱小的熊

十週年紀念徽章(五級)   終生苦力熊勳章  

今日心情

 . 積分: 9423
 . 精華: 28
 . 文章: 9950
 . 收花: 79350 支
 . 送花: 11004 支
 . 比例: 0.14
 . 在線: 2907 小時
 . 瀏覽: 187061 頁
 . 註冊: 8199
 . 失蹤: 12
 . 大熊國
#4 : 2004-9-18 09:07 AM     只看本作者 引言回覆

程式小子們~ 大家一齊加油吧~ 雖然熊小已經有一段時間沒寫c++了~


[如果你喜歡本文章,就按本文章之鮮花~送花給作者吧,你的支持就是別人的動力來源]
本文連接  
檢閱個人資料  訪問主頁  發私人訊息  Blog  新增/修改 爬文標記
leon1206
鐵驢友〔高級〕
等級: 6等級: 6
色即是空

今日心情

 . 積分: 74
 . 文章: 587
 . 收花: 197 支
 . 送花: 103 支
 . 比例: 0.52
 . 在線: 3197 小時
 . 瀏覽: 19855 頁
 . 註冊: 7362
 . 失蹤: 2160
#5 : 2004-9-28 10:49 PM     只看本作者 引言回覆

須引用標頭檔 <conio.h> 的定義

  格式 void gotoxy(int, int);

  功能 移動游標到(x, y) ==>  gotoxy(x, y);

******************************************************

我們必須要給函式 gotoxy 兩個整數引數,
而 gotoxy 沒有任何傳回值
   
   gotoxy(20, 10);
執行上面函式會將游標移到螢幕座標(20, 10)處

******************************************************

   (1, 1) 在螢幕最左上角
   (80, 25) 在螢幕最右下角

******************************************************

相關函式:
   clreol();    自游標所在位置將該行清除到行尾
   delline();   清除游標所在該行, 下面幾行往上遞補


至於你的作業 我還是看不太懂題目的意思 所以還沒辦法幫你 我猜想是不是印出一個s 然後隨著你按的鍵不同 跑不同方向?

void main()
{
int x,y,i;          //XY請自行定義一開始的座標
char input=A;
while(input!='q')
{
  input=getch();
  if(input=='w')    //其他方向 相差不多 不過我還沒試過XY到底是指拿個軸 你可以在去試試
  {                      //還有 我記得座標應該是左上角是(0,0)如果定義不對 記得要修改
   for(i=y;i>=0;i--)
   {
    clrscr();
    gotoxy(x,i);
    printf("s");
   }  
  }
  if(input=='a')
{}
  if(input=='s')
{}
if(input=='d')
{}
}



[如果你喜歡本文章,就按本文章之鮮花~送花給作者吧,你的支持就是別人的動力來源]
本文連接  
檢閱個人資料  發私人訊息  Blog  新增/修改 爬文標記
vacakadi
青銅驢友
等級: 11等級: 11等級: 11等級: 11
被驢騎的騎士。

十週年紀念徽章(六級)  

 . 積分: 265
 . 文章: 429
 . 收花: 1837 支
 . 送花: 1349 支
 . 比例: 0.73
 . 在線: 1090 小時
 . 瀏覽: 44704 頁
 . 註冊: 7418
 . 失蹤: 47
 . taiwan
#6 : 2004-9-29 02:14 AM     只看本作者 引言回覆

還是不行啦!
試了好多種,都出現錯誤檔。
┌──────┐
|      |
|  S       |
|      |
└──────┘   

上面為dos模式,就是開啟就有"S"在中間,
而當你按著"W"鍵,"S"會往上跑,
而當你按著"A"鍵,"S"會往左跑,
而當你按著"X"鍵,"S"會往下跑,
而當你按著"D"鍵,"S"會往右跑,
而當你按下"q或Q"鍵時,他就會跳出dos模式。

提示:
開頭要加上#include <conio.h>
相關提示
                int sx=13,sy=39;
            gotoxy(sx,sy);
            printf("s");

會應用到的  clrscr() ,這一個是清除動作。

[vacakadi 在 2004-9-30 03:44 AM 作了最後編輯]

[vacakadi 在 2004-9-30 03:45 AM 作了最後編輯]



[如果你喜歡本文章,就按本文章之鮮花~送花給作者吧,你的支持就是別人的動力來源]
本文連接  
檢閱個人資料  發私人訊息  Blog  新增/修改 爬文標記
leon1206
鐵驢友〔高級〕
等級: 6等級: 6
色即是空

今日心情

 . 積分: 74
 . 文章: 587
 . 收花: 197 支
 . 送花: 103 支
 . 比例: 0.52
 . 在線: 3197 小時
 . 瀏覽: 19855 頁
 . 註冊: 7362
 . 失蹤: 2160
#7 : 2004-9-29 08:18 AM     只看本作者 引言回覆


引用:
vacakadi寫到:
因為開啟畫面要"S"出現在畫面中間阿,
這樣不是要先定義(x,y)的位置嗎?

XY當然是要先給他值啊 看你一開始要擺在哪 就給他多少了
至於一開始要印出S在中間的話 再while迴圈外 在多加
gotoxy(x,y);
printf("s");


引用:
vacakadi寫到:
[clreol(); 因為我們老師,說這是要到的元件,]


clrscr是整個螢幕清除 clreol 這個我沒用過 看起來像是清除一整行

程式這種東西 建議你自己多嘗試 多去寫 像函式這種東西 不知道是啥就丟進去給電腦跑

經過測試 就可以知道自己寫的對不對了 不用特別跑上來問這樣寫對不對



[如果你喜歡本文章,就按本文章之鮮花~送花給作者吧,你的支持就是別人的動力來源]
本文連接  
檢閱個人資料  發私人訊息  Blog  新增/修改 爬文標記
tonykaotw
驢手小試
等級: 2


今日心情

 . 積分: 9
 . 文章: 56
 . 收花: 21 支
 . 送花: 420 支
 . 比例: 20
 . 在線: 211 小時
 . 瀏覽: 6168 頁
 . 註冊: 7283
 . 失蹤: 906
#8 : 2004-11-23 03:09 AM     只看本作者 引言回覆

看了一下 你的程式不是用c++的寫法 你寫的事c語言喔


[如果你喜歡本文章,就按本文章之鮮花~送花給作者吧,你的支持就是別人的動力來源]
本文連接  
檢閱個人資料  發私人訊息  Blog  新增/修改 爬文標記
柚祐
鍛鐵驢友
等級: 7等級: 7等級: 7
好吃的柚子 ~

 . 積分: 84
 . 精華: 3
 . 文章: 662
 . 收花: 224 支
 . 送花: 51 支
 . 比例: 0.23
 . 在線: 410 小時
 . 瀏覽: 1810 頁
 . 註冊: 7420
 . 失蹤: 864
 . 東森幼幼台
#9 : 2004-12-30 11:29 AM     只看本作者 引言回覆

我還看的懂 ... 所以應該是C語言吧 ... ^^   ( 因為我只學過 C )

回主題 ... leon1206 版友 已經幫你改正了 ...

另外 .. 也可以考慮用 switch 敘述 ...


char st ;

printf( "你是一個學生嗎?(Y orN)" ) ;  scanf("%c", &st) ;  

switch( st )

{

case 'Y' :  敘述1 ;      break;

case 'N' :  敘述2 ;      break;

default :  printf( "你輸入錯誤。\n" );     break;

}

用法大概是這樣 ...



[如果你喜歡本文章,就按本文章之鮮花~送花給作者吧,你的支持就是別人的動力來源]
本文連接  
檢閱個人資料  發私人訊息  Blog  新增/修改 爬文標記
momo0407
初出茅驢
等級: 1


 . 積分: 1
 . 文章: 24
 . 收花: 6 支
 . 送花: 22 支
 . 比例: 3.67
 . 在線: 0 小時
 . 瀏覽: 0 頁
 . 註冊: 7245
 . 失蹤: 7113
 . Taipei
#10 : 2005-1-4 01:00 AM     只看本作者 引言回覆

按鍵的部分,可以用這種方式..

char ch;
int nfinish;
do
{
  scanf(%c,&ch);
  switch(ch)
{
  case 'w':
  case  'W':
    DoUp();
    break;
  case 'x':
  case  'X':
    DoDown();
    break;
  case 'd':
  case  'D':
    DoRight();
    break;
  case 'a':
  case  'A':
    DoLeft();
    break;
   case 'q':
   case 'Q':
     bfinish = 1;
  }
}
while(bfinish != 1);

其中 DoXX,就是對應的函數..
大概是這樣吧..加油..自己寫才會學到東東哦..



[如果你喜歡本文章,就按本文章之鮮花~送花給作者吧,你的支持就是別人的動力來源]
本文連接  
檢閱個人資料  發私人訊息  Blog  新增/修改 爬文標記
vacakadi
青銅驢友
等級: 11等級: 11等級: 11等級: 11
被驢騎的騎士。

十週年紀念徽章(六級)  

 . 積分: 265
 . 文章: 429
 . 收花: 1837 支
 . 送花: 1349 支
 . 比例: 0.73
 . 在線: 1090 小時
 . 瀏覽: 44704 頁
 . 註冊: 7418
 . 失蹤: 47
 . taiwan
#11 : 2005-1-14 04:45 PM     只看本作者 引言回覆

這學期修完了,所以上面題目也做完了,
不過在學期快結束時才知道,我們學的是c語言,不是c++,
不過現在要換c++得學習,因為只學一學期,真的不夠阿。



[如果你喜歡本文章,就按本文章之鮮花~送花給作者吧,你的支持就是別人的動力來源]
本文連接  
檢閱個人資料  發私人訊息  Blog  新增/修改 爬文標記
Vic
開墾隊隊長.苦力
等級: 32等級: 32等級: 32等級: 32等級: 32等級: 32等級: 32等級: 32
老得不能再稱小的熊

十週年紀念徽章(五級)   終生苦力熊勳章  

今日心情

 . 積分: 9423
 . 精華: 28
 . 文章: 9950
 . 收花: 79350 支
 . 送花: 11004 支
 . 比例: 0.14
 . 在線: 2907 小時
 . 瀏覽: 187061 頁
 . 註冊: 8199
 . 失蹤: 12
 . 大熊國
#12 : 2005-1-14 10:38 PM     只看本作者 引言回覆


引用:
vacakadi寫到:
這學期修完了,所以上面題目也做完了,
不過在學期快結束時才知道,我們學的是c語言,不是c++,
不過現在要換c++得學習,因為只學一學期,真的不夠阿。


那就自學吧~ 程式如果按上課的進度來學~ 肯定是太慢~

如只做老師給的功課~ 也不見得對自己的加強能力有多大幫助~



[如果你喜歡本文章,就按本文章之鮮花~送花給作者吧,你的支持就是別人的動力來源]
本文連接  
檢閱個人資料  訪問主頁  發私人訊息  Blog  新增/修改 爬文標記
南無
銀驢友〔高級〕
等級: 14等級: 14等級: 14等級: 14


今日心情

 . 積分: 996
 . 精華: 1
 . 文章: 5126
 . 收花: 6613 支
 . 送花: 5000 支
 . 比例: 0.76
 . 在線: 711 小時
 . 瀏覽: 54263 頁
 . 註冊: 7383
 . 失蹤: 305
#13 : 2005-1-14 11:30 PM     只看本作者 引言回覆

要不要我們請版主大人,開個C.C++.JAVA.VB的特區讓我們將我們自己寫的程式PO出來讓大家一起探討跟研究,順便教換彼此的做法與心得以便增強我們撰寫程式的實力,必竟學校教的是很有限的
不與人研究和探討獨自閉門造車,實力的成長是有限的.



[如果你喜歡本文章,就按本文章之鮮花~送花給作者吧,你的支持就是別人的動力來源]
本文連接  
檢閱個人資料  發私人訊息  Blog  新增/修改 爬文標記
柚祐
鍛鐵驢友
等級: 7等級: 7等級: 7
好吃的柚子 ~

 . 積分: 84
 . 精華: 3
 . 文章: 662
 . 收花: 224 支
 . 送花: 51 支
 . 比例: 0.23
 . 在線: 410 小時
 . 瀏覽: 1810 頁
 . 註冊: 7420
 . 失蹤: 864
 . 東森幼幼台
#14 : 2005-1-14 11:42 PM     只看本作者 引言回覆

你們相信嗎 ... 我剛好正在學說 ... (汗)

自學總是很痛苦的 ... 老是沒有人可以問 ... 只有翻書感覺沒什麼進步 ...

( 書 我是翻完了啦 .. 可是沒有覺得我就會寫程式了 ... )

南無 兄 教教我吧 ...

也希望 熊大 指導我們該怎麼學習吧 ....



[如果你喜歡本文章,就按本文章之鮮花~送花給作者吧,你的支持就是別人的動力來源]
本文連接  
檢閱個人資料  發私人訊息  Blog  新增/修改 爬文標記
Vic
開墾隊隊長.苦力
等級: 32等級: 32等級: 32等級: 32等級: 32等級: 32等級: 32等級: 32
老得不能再稱小的熊

十週年紀念徽章(五級)   終生苦力熊勳章  

今日心情

 . 積分: 9423
 . 精華: 28
 . 文章: 9950
 . 收花: 79350 支
 . 送花: 11004 支
 . 比例: 0.14
 . 在線: 2907 小時
 . 瀏覽: 187061 頁
 . 註冊: 8199
 . 失蹤: 12
 . 大熊國
#15 : 2005-1-14 11:45 PM     只看本作者 引言回覆

熊寫程式很爛的~

c/c++忘了99%~

再說~ 這裡的版主是shrainy

不過寫程式真的多個人一同開發~ 要好很多~ 有人一齊學~ 也不錯~



[如果你喜歡本文章,就按本文章之鮮花~送花給作者吧,你的支持就是別人的動力來源]
本文連接  
檢閱個人資料  訪問主頁  發私人訊息  Blog  新增/修改 爬文標記

 17  1/2  1  2  > 
   



 



所在時區為 GMT+8, 現在時間是 2024-11-1 07:05 AM
清除 Cookies - 連絡我們 - TWed2k © 2001-2046 - 純文字版 - 說明
Discuz! 0.1 | Processed in 0.033768 second(s), 6 queries , Qzip disabled