c語言源碼400行,c語言400行代碼大作業

本文目錄一覽:

高分求用C語言編的鬧鐘程序或者定時提醒程序300-400行之間

給,已經編譯運行確認了:

#includeconio.h

#include stdio.h

#includestdlib.h

#includetime.h

#includestring.h

int GetHour(char *s)

{

char *p, *q;

p = (char *)malloc(10);

strcpy(p, s);

q = p;

while(*q != ‘:’)

{

q++;

}

*q = ‘\0’;

return atoi(p);

}

int GetMinute(char *s)

{

char *p;

p = (char *)malloc(10);

strcpy(p, s);

while(*p != ‘:’)

{

p++;

}

p++;

return atoi(p);

}

main()

{

char s[10];

int hour,minute;

time_t t;

struct tm *timeinfo;

printf(“please input the time like [18:30]:\n”);

gets(s);

hour = GetHour(s);

minute = GetMinute(s);

while(1)

{

time(t);

timeinfo = localtime(t);

if(timeinfo-tm_hour hour)continue;

else if(timeinfo-tm_min minute)continue;

else

{

printf(“Time is up!Wake up!\n\007”);

printf(“\a\a\a\a”);

exit(0);

}

}

}

C語言 怎麼在21點小遊戲中加入其他紙牌遊戲,求個完整代碼,共400行就行

如果你已經有其他牌戲的代碼,只要在一開始加一個功能選擇就行。

如果你沒有其他代碼,這個不是牌戲。

#includedos.h

#includegraphics.h

#includestdlib.h

int

sheet[20][2],sheeter;

picture(int

x,int

y,int

aim)

{

setcolor(2);

setlinestyle(0,0,3);

setwritemode(0);

line(x+10+aim,y,x+5+aim,y);

line(x-10-aim,y,x-5-aim,y);

line(x,y+10+aim,x,y+5+aim);

line(x,y-10-aim,x,y-5-aim);

delay(15000);

}

target_sheet(int

x,int

y,int

aim)

{

int

i;

if(0==rand()%2)x+=rand()%aim;

else

x-=rand()%aim;

if(0==rand()%2)y+=rand()%aim-aim/2-aim/3;

else

y-=rand()%aim;

sheeter=(sheeter+1)%20;

sheet[sheeter][0]=x;

sheet[sheeter][1]=y;

}

sounding()

{

sound(1500);

delay(2000);

sound(1000);

delay(2000);

sound(500);

delay(2000);

nosound();

}

main()

{

int

x,y,i,aim;

int

gdriver,

gmode;

union

REGS

regs;

detectgraph(gdriver,

gmode);

initgraph(gdriver,

gmode,

“c:\\turboc2”);

while(1)

{

cleardevice();

setcolor(7);

for(i=0;i20;i++)

{

circle(sheet[i][0],sheet[i][1],0);

}

regs.x.ax=3;

int86(0x33,®s,®s);

x=regs.h.cl+regs.h.ch*255;

y=regs.h.dl+regs.h.dh*255;

if(regs.h.bl!=0)

{

sounding();

if(aim4)aim=aim+1+rand()%2;

else

aim=aim+3+rand()%5;

if(aim30)aim=25+rand()%15;

target_sheet(x,y,aim);

picture(x,y,aim-5);

}

else

if(aim5)aim-=aim/3;

else

if(aim0)aim-=1;

picture(x,y,aim);

setlinestyle(0,0,3);

}

closegraph();

}

中分,緊急求個200行左右的C語言源代碼!

#include iostream.h

#include fstream.h

int mark[]; //右來保存走法的

int num[2][2];//棋盤

int temp;

int k ;

int q ;

string strAim = “123804765” //目標字元串,空格用0表示

string States[100];//字元竄數組

int iQuick; //有來退出遞歸的標誌,1,表示找到走法,可以退出,0,怎麼沒有找到走法,繼續走

Hrd(int i,int j)//華龍道演算法,好像能找到結果,但是不能找到最少步數的結果,我不確定會不會還有漏洞。結果保存在mark[]中

{ string str1;

if (i!=0) //如果可以向上走,則向上走一步

{

temp=num[i-1][j];

num[i-1][j]=num[i][j];

num[i][j]=temp ; //交換空格和它上面的數字

// 保存交換後的狀態

str1=Change2Str(num[][]); //轉化成字元串,用來比較

if (CompState(str1)) //比較變換後的狀態是否在以前的狀態中出現過

{

//如果以前出現過,則返回

temp=num[i-1][j];

num[i-1][j]=num[i][j];

num[i][j]=temp ; // 把原來交換過的數字再交換過來

return ;

}

else//比較後,發現目前的狀態以前沒有出現過

{ mark[k++]=1 ;

if(strcmp(strAim, str1)=1)//跟目標比,看是否相等

{

iquick=1;

return;

}

else //不相等,沒有達到最後我們的要求

{

//1 代表向上走了一步

Add2States(str1); //保存現在的狀態到狀態數組中

Hrd(i-1,j);

if (iquick=1) //可以退出

{

return;

}

} //遞歸,繼續遍歷

}

}

if(j!=2)//如果可以向右走,則向右走一步

{

temp=num[i][j+1];

num[i][j+1]=num[i][j] ;

num[i][j]=temp;

// 保存交換後的狀態

str1=Change2Str(num[][]); //轉化成字元串,用來比較

if (CompState(str1)) //比較變換後的狀態是否在以前的狀態中出現過

{

//如果以前出現過,返回

temp=num[i][j+1];

num[i][j+1]=num[i][j] ;

num[i][j]=temp; // 把原來交換過的數字再交換過來

return;

}

else//比較後,發現目前的狀態以前沒有出現過

{ mark[k++]=2 ; //2 代表向右走了一步

if(strcmp(strAim, str1)=1)//跟目標比,看是否相等

{

iquick=1;

return;

}

else //沒有達到結果

{

Add2States(str1); //保存現在的狀態到狀態數組中

Hrd(i,j+1) ; //遞歸,繼續遍歷

if (iquick=1)

{

return;

}

}

}

}

if (i!=2)// 如果可以向下走,則向下走一步

{

temp=num[i+1][j];

num[i+1][j]=num[i][j];

num[i][j]=temp;

// 保存交換後的狀態

str1=Change2Str(num[][]); //轉化成字元串,用來比較

if (CompState(str1)) //比較變換後的狀態是否在以前的狀態中出現過

{

//如果以前出現過,則返回

temp=num[i+1][j];

num[i+1][j]=num[i][j];

num[i][j]=temp; // 把原來交換過的數字再交換過來

return ;

}

else//比較後,發現目前的狀態以前沒有出現過

{ mark[k++]=3 ; //3 代表向下走了一步

if(strcmp(strAim, str1)=1)//跟目標比,看是否相等

{

iquick=1;

return;

}

else //沒有達到最後我們的要求

{

Add2States(str1); //保存現在的狀態到狀態數組中

Hrd(i+1,j) ; //遞歸,繼續遍歷

if (iquick=1)

{

return;

}

}

}

}

if (j!=0)//如果可以向左走,則向左走一步

{

temp=num[i1][j-1];

num[i][j-1]=num[i][j];

num[i][j]=temp;

// 保存交換後的狀態

str1=Change2Str(num[][]); //轉化成字元串,用來比較

if (CompState(str1)) //比較變換後的狀態是否在以前的狀態中出現過

{

//如果以前出現過,則回溯

temp=num[i][j-1];

num[i][j-1]=num[i][j];

num[i][j]=temp; // 把原來交換過的數字再交換過來

return ;

}

else//比較後,發現目前的狀態以前沒有出現過

{ mark[k++]=4 ; //1 代表向右走了一步

if(strcmp(strAim, str1)=1)//跟目標比,看是否相等

{

iquick=1;

return;

}

else //沒有達到最後我們的要求

{

Add2States(str1); //保存現在的狀態到狀態數組中

Hrd(i,j-1) ; //遞歸,繼續遍歷

if (iquick=1)

{

return;

}

}

}

}

//如果都走過了,則返回

k–;

return;

}

void Change2Str(int arr[][])// 把二維數組轉換成一個字元串

{int i,j

string strState

for (i=0;i3 ;i++ )

{ for (j=0;j3 ;j++ )

{

strState= strState arr[i][j];

}

}

return strState;

}

void CompState(string str1 )//比較當前的狀態是否再以前的狀態中出現過

{ int i;

for (i=0;ilen(states[])-1 ; i++)//len(states[]),取得數組的長度,有點忘了

{

if (strcmp(States[i],str1)!=0)//如果兩個字元串相等,則函數返回true

{

return true;

}

}

return false;

}

Add2States(string str1)

{

States[q++]=str1 ;

}

main()

{ num[0][0]=1;

num[0][1]=2;

num[0][2]=3;

num[1][0]=8;

num[1][1]=6;

num[1][2]=4;

num[2][0]=1;

num[2][1]=0;

num[2][2]=5;

hrd(2,1);

for(int i=0 ,i100,i++)

{countmark[i]endl;

}

}

Dim moveup As Integer ‘蛇向上轉向的標誌

Dim movedown As Integer

Dim moveleft As Integer

Dim moveright As Integer

Public u As Integer ‘u,l,r,d為蛇轉向時的控制數值

Public d As Integer

Public l As Integer

Public r As Integer

Public score As Integer ‘遊戲分數

Public speed As Integer ‘遊戲速度

Public pause As Boolean ‘遊戲暫停標誌

Public gamebegin As Boolean ‘遊戲開始標誌

Public s As Integer ‘蛇的當前長度,開始時設為6

Public eatd As Boolean ‘蛇是否吃到食物的標誌

Public lastx As Integer ‘若蛇吃到食物,lastx,lasty用來存放當前最後一個shape的運動狀態,以供設定新的shape運動狀態之用

Public lasty As Integer

Option Base 1

Dim X(100) As Long ‘數組存放蛇的長度

Dim Y(100) As Long

Public Sub eat() ‘判斷蛇是否吃到食物的函數

If X(1) = -200 Then

If Shape1(1).Left = Shape2.Left And Shape1(1).Top = Shape2.Top Then

eatd = True

End If

End If

If Y(1) = -200 Then

If Shape1(1).Top = Shape2.Top And Shape1(1).Left = Shape2.Left Then

eatd = True

End If

End If

If X(1) = 200 Then

If Shape1(1).Left = Shape2.Left + 200 And Shape1(1).Top = Shape2.Top Then

eatd = True

End If

End If

If Y(1) = 200 Then

If Shape1(1).Top = Shape2.Top + 200 And Shape1(1).Left = Shape2.Left Then

eatd = True

End If

End If

End Sub

Public Sub ensure_position() ‘此函數確定新的shape1(s)的位置

If X(s – 1) = -200 Then

Shape1(s).Left = Shape1(s – 1).Left + 200: Shape1(s).Top = Shape1(s – 1).Top

End If

If Y(s – 1) = -200 Then

Shape1(s).Left = Shape1(s – 1).Left: Shape1(s).Top = Shape1(s – 1).Top + 200

End If

If X(s – 1) = 200 Then

Shape1(s).Left = Shape1(s – 1).Left – 200: Shape1(s).Top = Shape1(s – 1).Top

End If

If Y(s – 1) = 200 Then

Shape1(s).Left = Shape1(s – 1).Left: Shape1(s).Top = Shape1(s – 1).Top – 200

End If

End Sub

Public Sub ensure_state() ‘此過程用來確定新的控制項的初始運動狀態

If X(1) = -200 Then

If moveleft = 1 Then

X(s) = X(s – 1): Y(s) = Y(s – 1)

Else

X(s) = lastx: Y(s) = lasty

End If

End If

If Y(1) = -200 Then

If moveup = 1 Then

X(s) = X(s – 1): Y(s) = Y(s – 1)

Else

X(s) = lastx: Y(s) = lasty

End If

End If

If X(1) = 200 Then

If moveright = 1 Then

X(s) = X(s – 1): Y(s) = Y(s – 1)

Else

X(s) = lastx: Y(s) = lasty

End If

End If

If Y(1) = 200 Then

If movedown = 1 Then

X(s) = X(s – 1): Y(s) = Y(s – 1)

Else

X(s) = lastx: Y(s) = lasty

End If

End If

End Sub

Public Sub strike_oneself() ‘測試蛇頭是否撞到自己

Dim i

Dim j: j = 0

If Y(1) = 200 Then ‘蛇頭向下撞到自己

For i = 7 To s ‘蛇頭只能和第六塊或以後的蛇身相撞

If Shape1(1).Top = Shape1(s).Top And Shape1(1).Left = Shape1(s).Left Then

Form1.initialize

Form1.outputmessage

Exit For

End If

Next i

End If

If X(1) = 200 Then ‘蛇頭向右撞到自己

For i = 7 To s

If Shape1(1).Left = Shape1(i).Left – 200 And Shape1(1).Top = Shape1(i).Top Then

Form1.initialize

Form1.outputmessage

Exit For

End If

Next i

End If

If Y(1) = -200 Then ‘蛇頭向上撞到自己

For i = 7 To s

If Shape1(1).Top = Shape1(i).Top + 200 And Shape1(1).Left = Shape1(i).Left Then

Form1.initialize

Form1.outputmessage

Exit For

End If

Next i

End If

If X(1) = -200 Then ‘蛇頭向左撞到自己

For i = 7 To s

If Shape1(1).Left = Shape1(i).Left + 200 And Shape1(1).Top = Shape1(i).Top Then

Form1.initialize

Form1.outputmessage

Exit For

End If

Next i

End If

End Sub

Public Sub strike_wall() ‘測試蛇頭是否撞到牆壁

If Shape1(1).Top 0 Or Shape1(1).Top Line1.Y1 – 200 Or Shape1(1).Left 0 Or Shape1(1).Left Form1.Width – 200 Then

Form1.outputmessage

Form1.initialize

End If

End Sub

Public Sub outputmessage() ‘ 遊戲結束後的輸出信息

gameovermessage = “GAME OVER!”

dx = (8000 – TextWidth(gameovermessage)) / 2 ‘在窗體中間輸出”GAME OVER!”和得分

dy = (6000 – TextHeight(gameovermessage)) / 2

CurrentX = dx: CurrentY = dy

Form1.Print gameovermessage

scoremessage = “你的得分:” + Text1.Text

dx = (8000 – TextWidth(scoremessage)) / 2

dy = dy + TextHeight(scoremessage)

CurrentX = dx: CurrentY = dy

Form1.Print scoremessage

End Sub

Public Sub initialize() ‘遊戲結束(失敗)後,遊戲初始化函數

moveup = 0

movedown = 0

moveleft = 0

moveright = 0

u = 0: d = 0: l = 0: r = 0

Label5.Caption = “停止”

For i = 1 To s ‘ 初始化蛇的位置和狀態

Shape1(i).Left = 1200 + (6 – i) * 200

Shape1(i).Top = 5000

X(i) = 200

Y(i) = 0

Next i

If s 6 Then

For i = 7 To s

Unload Shape1(i) ‘卸載多餘的shape,使初始的shape個數為六個

Next i

End If

‘以下的這段是用來查看遊戲初始化時的中的參數

‘CurrentX = 0: CurrentY = 0

‘Form1.FontSize = 10

‘Print moveup: Print movedown: Print moveleft: Print moveright

‘Print u: Print r: Print l: Print d

‘For i = 1 To s

‘Print X(i): Print Y(i)

‘Next i

s = 6

Timer1.Enabled = False

gamebegin = False ‘遊戲未開始

pause = False

HScroll1.Enabled = True

End Sub

Private Sub Command1_Click()

Timer1.Enabled = False

Dim r

r = MsgBox(“你真的要退出嗎?”, 33, “警告”)

If r = 1 Then

Unload Form1

Else

Timer1.Enabled = True

End If

End Sub

Private Sub Form_KeyPress(keyascii As Integer)

If gamebegin = True And pause = False Then ‘只有遊戲處於開始時方向鍵才有效

‘下面四個if語句是蛇的方向控制函數

If keyascii = 119 Then

If Y(1) 200 Then ‘只有當蛇頭不正好向下運動時,按下向上才有效

moveup = 1 ‘向下上為w

End If

End If

If keyascii = 97 Then ‘向左為a

If X(1) 200 Then

moveleft = 1

End If

End If

If keyascii = 115 Then ‘向下為s

If Y(1) -200 Then

movedown = 1

End If

End If

If keyascii = 100 Then ‘向右為d

If X(1) -200 Then

moveright = 1

End If

End If

End If

If keyascii = 32 Then ‘判斷遊戲是否在開始,按下空格鍵開始,否則按下空格鍵為暫停

If gamebegin = False Then

Timer1.Enabled = True

Label5.Caption = “開始”

Form1.Cls

score = 0

Text1.Text = Str$(score)

HScroll1.Enabled = False

gamebegin = True

Else

If pause = True Then ‘判斷暫停與否

Timer1.Enabled = True

Label5.Caption = “開始”

Else

Timer1.Enabled = False

Label5.Caption = “暫停”

End If

pause = Not pause

End If

End If

End Sub

Private Sub Form_Load() ‘對各參數的初始化

moveup = 0

moveleft = 0

moveright = 0

movedown = 0

u = 0: l = 0: d = 0: r = 0

s = 6 ‘蛇的初始長度

eatd = False

gamebegin = False

pause = False

speed = HScroll1.Value ‘初始速度

Label5.Caption = “停止”

Dim i

For i = 1 To s ‘蛇的初始運動方向

X(i) = 200

Y(i) = 0

Next i

Timer1.Enabled = False ‘沒開始遊戲

Shape2.Left = 200 * Int(30 * Rnd) ‘貪吃蛇的食物的位置初始化

Shape2.Top = 200 * Int(30 * Rnd)

End Sub

Private Sub HScroll1_Change()

speed = HScroll1.Value

End Sub

Private Sub Timer1_Timer()

Timer1.Interval = 150 / speed ‘遊戲速度

If movedown = 1 Then ‘按下下方向鍵,蛇向下轉向

d = d + 1

X(d) = 0: Y(d) = 200

If d = s Then

movedown = 0: d = 0

End If

End If

If moveup = 1 Then ‘按下向上方向鍵,蛇向上轉向

u = u + 1

X(u) = 0: Y(u) = -200

If u = s Then

moveup = 0: u = 0

End If

End If

If moveleft = 1 Then ‘向左

l = l + 1

X(l) = -200: Y(l) = 0

If l = s Then

moveleft = 0: l = 0

End If

End If

If moveright = 1 Then ‘向右

r = r + 1

X(r) = 200: Y(r) = 0

If r = s Then

moveright = 0: r = 0

End If

End If

Dim i ‘蛇的運動代碼

For i = 1 To s

Shape1(i).Left = Shape1(i).Left + X(i)

Shape1(i).Top = Shape1(i).Top + Y(i)

Next i

Form1.eat ‘調用過程eat(),判斷蛇是否吃了食物

If eatd = True Then

score = score + 5 * HScroll1.Value

Text1.Text = Str$(score)

Shape2.Left = 200 * Int(30 * Rnd) ‘如果食物被吃則隨機產生貪吃蛇的食物的位置

Shape2.Top = 200 * Int(30 * Rnd)

Shape2.FillColor = RGB(Int(255 * Rnd), Int(255 * Rnd), Int(255 * Rnd)) ‘隨機產生食物的顏色

If Shape2.FillColor = H0 Then

Shape2.FillColor = RGB(100, 150, 200)

End If

lastx = X(s) ‘蛇吃到食物,lastx,lasty用來存放當前最後一個shape的運動狀態-

lasty = Y(s) ‘-以供設定新的shape運動狀態之用

s = s + 1

Load Shape1(s) ‘產生新的控制項shape1數組,使蛇的長度加長

Form1.ensure_state ‘調用設定新的shape控制項的運動狀態過程

Form1.ensure_position ‘設定新的shape1的位置

Shape1(s).Visible = True

eatd = False

End If

Form1.strike_oneself ‘測試遊戲是否失敗的函數

Form1.strike_wall

End Sub

求一篇C語言編寫的通訊錄程序,原創,調試成功的來,要求400行以上,速度立刻馬上,現在就要,好的加分。

呵呵,400行以上,立刻馬上,神的速度都沒得這麼快,自己慢慢等吧

C語言一元多項式計算器程序

我可以幫你做,不過需要一點時間,還有就是你可以把要求說細緻一點。

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/185235.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-11-26 12:16
下一篇 2024-11-26 12:17

相關推薦

  • Python周杰倫代碼用法介紹

    本文將從多個方面對Python周杰倫代碼進行詳細的闡述。 一、代碼介紹 from urllib.request import urlopen from bs4 import Bea…

    編程 2025-04-29
  • Python字元串寬度不限制怎麼打代碼

    本文將為大家詳細介紹Python字元串寬度不限制時如何打代碼的幾個方面。 一、保持代碼風格的統一 在Python字元串寬度不限制的情況下,我們可以寫出很長很長的一行代碼。但是,為了…

    編程 2025-04-29
  • Python基礎代碼用法介紹

    本文將從多個方面對Python基礎代碼進行解析和詳細闡述,力求讓讀者深刻理解Python基礎代碼。通過本文的學習,相信大家對Python的學習和應用會更加輕鬆和高效。 一、變數和數…

    編程 2025-04-29
  • AES加密解密演算法的C語言實現

    AES(Advanced Encryption Standard)是一種對稱加密演算法,可用於對數據進行加密和解密。在本篇文章中,我們將介紹C語言中如何實現AES演算法,並對實現過程進…

    編程 2025-04-29
  • 學習Python對學習C語言有幫助嗎?

    Python和C語言是兩種非常受歡迎的編程語言,在程序開發中都扮演著非常重要的角色。那麼,學習Python對學習C語言有幫助嗎?答案是肯定的。在本文中,我們將從多個角度探討Pyth…

    編程 2025-04-29
  • Python滿天星代碼:讓編程變得更加簡單

    本文將從多個方面詳細闡述Python滿天星代碼,為大家介紹它的優點以及如何在編程中使用。無論是剛剛接觸編程還是資深程序員,都能從中獲得一定的收穫。 一、簡介 Python滿天星代碼…

    編程 2025-04-29
  • 倉庫管理系統代碼設計Python

    這篇文章將詳細探討如何設計一個基於Python的倉庫管理系統。 一、基本需求 在著手設計之前,我們首先需要確定倉庫管理系統的基本需求。 我們可以將需求分為以下幾個方面: 1、庫存管…

    編程 2025-04-29
  • 寫代碼新手教程

    本文將從語言選擇、學習方法、編碼規範以及常見問題解答等多個方面,為編程新手提供實用、簡明的教程。 一、語言選擇 作為編程新手,選擇一門編程語言是很關鍵的一步。以下是幾個有代表性的編…

    編程 2025-04-29
  • 雲智直聘 源碼分析

    本文將會對雲智直聘的源碼進行分析,包括前端頁面和後端代碼,幫助讀者了解其架構、技術實現以及對一些常見的問題進行解決。通過本文的閱讀,讀者將會了解到雲智直聘的特點、優勢以及不足之處,…

    編程 2025-04-29
  • Python實現簡易心形代碼

    在這個文章中,我們將會介紹如何用Python語言編寫一個非常簡單的代碼來生成一個心形圖案。我們將會從安裝Python開始介紹,逐步深入了解如何實現這一任務。 一、安裝Python …

    編程 2025-04-29

發表回復

登錄後才能評論