彈彈c語言
c語言編程煙花代碼簡單如下:
#include "stdlib.h"
#include "graphics.h"
#include "stdio.h"
#include "math.h"
#include "conio.h "
#define PI 3.1425926
main()
{
int gdriver=DETECT,gmode,errorcode;
int a[10],b[10],x,y,c,r,i,j,t;
double rad = 0.0;
/* initialize graphics and local variables */
initgraph(&gdriver , &gmode ,"");
/* read result of initialization */
errorcode = graphresult();
if (errorcode != grOk) /* an error occurred */
{
printf("Graphics error : %s/n",grapherrormsg(errorcode));
printf("Please any key to halt:");
getch();
exit(1); /* terminate with an error code */
}
randomize();
for(;!kbhit();)
{
x=rand()%500+100; /*隨機中心坐標州純*/
y=rand()%300+100;
for(r = 0 ;r <= 8 ; r++ ) /*煙花的大小設定*/
{
for(i = 0,rad = 0.0 ; rad < 2*PI; rad += 0.78 ) /*設定坐標*/
{
a[i++] = x + (int)r *10* cos(rad);
b[ i ] = y + (int)r *10* sin(rad);
}
t = i;
for(i=1;i<t;i++)
{
c=rand()%13+1; /*各點的顏色隨機*/
setcolor(c); /*功能:將當前圖形屏幕的當前筆畫顏色置為color.*/
circle(a[i],b[i],1);/* a[i],b[i] 為圓心 1 為半徑 畫圓 */
}
delay(10000);
delay(10000);
cleardevice();
函數名: cleardevice
功 能: 清除圖形屏幕
用 法: void far cleardevice(void);
}
}
getch();
closegraph();
函數名: closegraph
功 能: 關閉圖形系統
用 法: void far closegraph(void);
}
初始化煙花參數
void Init( int i )
{
// 分別為:煙花余族中心到圖片邊緣的最遠距離、煙花中心到圖片左上角的距離 (x、y) 兩個分量
int r[13] = { 120, 120, 155, 123, 130, 147, 138, 138, 130, 135, 140, 132, 155 };
int x[13] = { 120, 120, 110, 117, 110, 93, 102, 102, 110, 105, 100, 108, 110 };
int y[13] = { 120, 120, 85, 118, 120, 103, 105, 110, 110, 120, 120, 104, 85 };
/**** 初始化煙花 *****/
Fire[i].x = 0; // 煙花中心坐標
Fire[i].y = 0;
Fire[i].width = 240; // 圖片寬
Fire[i].height = 240; // 圖片高
Fire[i].max_r = r[i]; // 最大半徑
Fire[i].cen_x = x[i]; // 中心距左上角距離
Fire[i].cen_y = y[i];
Fire[i].show = false; // 是否綻放
Fire[i].dt = 5; // 綻放時間間隔
Fire[i].t1 = timeGetTime();
Fire[i].r = 0; // 從 0 開始綻放
/**** 初始化煙花彈 *****/
Jet[i].x = -240; // 煙花彈左上角坐標
Jet[i].y = -240;
Jet[i].hx = -240; // 煙花彈豎跡弊發射最高點坐標
Jet[i].hy = -240;
Jet[i].height = 0; // 發射高度
Jet[i].t1 = timeGetTime();
Jet[i].dt = rand() % 10; // 發射速度時間間隔
Jet[i].n = 0; // 煙花彈閃爍圖片下標
Jet[i].shoot = false; // 是否發射
}
⑵ c語言彈出窗口應用程序錯誤
應用程序錯誤問題:
1.木馬病毒造成常用病毒捆綁應用程序和系統文件,然後安全殺毒軟體把有木馬病毒應用程序和系統文件查殺導致。
2.應用程序組件丟失,應用程序完整的運行需要一些系統文件或者某些ll文件支持的,如果應用程序組件不完整也會導致的。
3.系統文件損壞或丟失,盜版系統或Ghost版本系統,很容易出現該問題。
4.操作系統自身的問題,操作系統本身也會有bug 。
5.硬體問題,例如內存條壞了或者存在質量問題,或者內存條的金手指的灰塵特別多。
應用程序錯誤解決方法:
1.檢查電腦是否存在病毒,請使用網路衛士進行木馬查殺。
2.系統文件損壞或丟失,盜版系統或Ghost版本系統,很容易出現該問題。建議:使用完整版或正版系統。
3.安裝的軟體與系統或其它軟體發生沖突,找到發生沖突的軟體,卸載它。如果更新下載補丁不是該軟體的錯誤補丁,也會引起軟體異常,解決辦法:卸載該軟體,重新下載重新安裝試試。順便檢查開機啟動項,把沒必要啟動的啟動項禁止開機啟動。
4.如果檢查上面的都沒問題,可以試試下面的方法。
打開開始菜單→運行→輸入cmd→回車,在命令提示符下輸入下面命令 for %1 in (%windir%\system32\*.dll) do regsvr32.exe /s %1回車。
完成後,在輸入下面
for %i in (%windir%\system32\*.ocx) do regsvr32.exe /s %i 回車。
如果怕輸入錯誤,可以復制這兩條指令,然後在命令提示符後擊滑鼠右鍵,打「粘貼」,回車,耐心等待,直到屏幕滾動停止為止(重啟電腦)。
⑶ c語言的特點
C語言的特點 :簡潔緊湊、靈活方便;運算符豐富 ;數據結構豐富 ;C是結構式語言 ;C語法限制不太嚴格、程序設計自由度大;C語言允許直接訪問物理地址,可以直接對硬體進行操作;C語言程序生成代碼質量高,程序執行效率高;C語言適用范圍大,可移植性好。(3)彈彈c語言擴展閱讀
簡潔緊湊、靈活方便:
C語言一共只有32個關鍵字,9種控制語句,程序書寫自由,主要用小寫字母表示。它把高級語言的基本結構和語句與低級語言的實用性結合起來。 C 語言可以象匯編語言一樣對位、位元組和地址進行操作, 而這三者是計算機最基本的工作單元。
運算符豐富:
C的運算符包含的范圍很廣泛,共有種34個運算符。C語言把括弧、賦值、強制類型轉換等都作為運算符處理。從而使C的運算類型極其豐富表達式類型多樣化,靈活使用各種運算符可以實現在其它高級語言中難以實現的運算。
數據結構豐富:
C的數據類型有:整型、實型、字元型、數組類型、指針類型、結構體類型、共用體類型等。能用來實現各種復雜的數據類型的運算。並引入了指針概念,使程序效率更高。另外C語言具有強大的圖形功能, 支持多種顯示器和驅動器。且計算功能、邏輯判斷功能強大。
C是結構式語言:
結構式語言的顯著特點是代碼及數據的分隔化,即程序的各個部分除了必要的信息交流外彼此獨立。這種結構化方式可使程序層次清晰, 便於使用、維護以及調試。C語言是以函數形式提供給用戶的,這些函數可方便的調用,並具有多種循環、條件語句控製程序流向,從而使程序完全結構化。
C語法限制不太嚴格、程序設計自由度大:
一般的高級語言語法檢查比較嚴,能夠檢查出幾乎所有的語法錯誤。而C語言允許程序編寫者有較大的自由度。
C語言允許直接訪問物理地址,可以直接對硬體進行操作:
因此既具有高級語言的功能,又具有低級語言的許多功能,能夠象匯編語言一樣對位、位元組和地址進行操作,而這三者是計算機最基本的.工作單元,可以用來寫系統軟體。
C語言程序生成代碼質量高,程序執行效率高:
一般只比匯編程序生成的目標代碼效率低10へ20%。
C語言適用范圍大,可移植性好:
C語言有一個突出的優點就是適合於多種操作系統, 如DOS、UNIX,也適用於多種機型。
用法補充:C語言對操作系統和系統使用程序以及需要對硬體進行操作的場合,用C語言明顯優於其它高級語言,許多大型應用軟體都是用C語言編寫的。 C語言具有繪圖能力強,可移植性,並具備很強的數據處理能力,因此適於編寫系統軟體,三維,二維圖形和動畫它是數值計算的高級語言。
特有特點:
C語言是一個有結構化程序設計、具有變數作用域(variable scope)以及遞歸功能的過程式語言。
C語言傳遞參數均是以值傳遞(pass by value),另外也可以傳遞指針(a pointer passed by value)。
不同的變數類型可以用結構體(struct)組合在一起。
只有32個保留字(reserved keywords),使變數、函數命名有更多彈性。
部份的變數類型可以轉換,例如整型和字元型變數。
通過指針(pointer),C語言可以容易的對存儲器進行低級控制。
預編譯處理(preprocessor)讓C語言的編譯更具有彈性。
⑷ c語言中如何實現小球有初速度在平面框架反彈
在 C 語言中實現小球有初速度在平面框架反彈可以使用以下方法:
定義一個結構體或類來存儲小球的位置,速度和其他信息。
使用一個循環來模擬小球的運動,在每次循環中更新小球的位置。
檢查小球是否碰到了框架的邊界,如果是,就改變小球的速度。
在每次循環中使用函數來繪制告磨源小球的位置。
使用一個函數來更新小球的速度,當小球碰到邊界時將速度相應地反彈
最後游肆使用一個函數來更新小球的位置。
這是一個簡單的概括,如果需要具體實現細節可以告訴我您需要的功能以及環境條件襪態,我會給您更加詳細的回答
⑸ 用c語言如何實現彈除對話框
#include
#include
char format[]="%s%s ";
char hello[]="Hello";
char world[]="world";
HWND hwnd;void main(void)
asm
//push NULL
//call dword ptr GetMoleHandle
//mov hwnd,eax push MB_OK mov eax,offset world push eax mov eax,offset hello push eax push 0//說明此處不能將前面注釋掉代碼處得到的hwnd壓棧,否則對話框彈不出來。
call dword ptr MessageBox
}
}
WINDOWS程序MessagBox
WINDOWS或控制台 assert
C/C++ code
// crt_assert.c
// compile with: /c
#include <stdio.h>
#include <assert.h>
#include <string.h>
void analyze_string( char *string ); // Prototype
int main( void )
{
char test1[] = "abc", *test2 = NULL, test3[] = "";
printf ( "Analyzing string '%s' ", test1 ); fflush( stdout );
analyze_string( test1 );
printf ( "Analyzing string '%s' ", test2 ); fflush( stdout );
analyze_string( test2 );
printf ( "Analyzing string '%s' ", test3 ); fflush( stdout );
analyze_string( test3 );
}
// Tests a string to see if it is NULL,
// empty, or longer than 0 characters.
void analyze_string( char * string )
{
assert( string != NULL ); // Cannot be NULL
assert( *string != '