當前位置:首頁 » 編程語言 » c語言編程模擬下雨
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言編程模擬下雨

發布時間: 2023-07-04 16:27:19

㈠ 這個C程序的目的很簡單,計算每年的總降雨量,年平均降雨量,月平均降雨量,編譯器沒報錯,

for(y=0;y<YRS;y++)
{
for(m=0;m<MONTHS;m++)
total+=ar[y][m];
printf("%d%10.1f\n",1990+y,total);
}
你要計算每年的total,但是這里的total是不斷累加的,每次外循環時應該把total置為0;
下面那個函數也一樣

㈡ 如何實現c語言程序各顏色數字雨代碼

#include<stdio.h>

#include<time.h>

#include<windows.h>

typedef struct

{

int x,y;

char ch;

}STU;

STU st[100];

//出現位置

void gotoxy(int x, int y)

{

HANDLE hout;

COORD pos;

pos.X = x;

pos.Y = y;

hout = GetStdHandle(STD_OUTPUT_HANDLE);

SetConsoleCursorPosition(hout, pos);

}

/*隱藏游標*/

void show_cursor(int hide)

{

CONSOLE_CURSOR_INFO cciCursor;

HANDLE hout;

hout = GetStdHandle(STD_OUTPUT_HANDLE);

if(GetConsoleCursorInfo(hout, &cciCursor))

{

cciCursor.bVisible = hide;

SetConsoleCursorInfo(hout, &cciCursor);

}

}

/*設置顏色*/

void set_color(int color)

{

SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), color);

}

main()

{

int i,j;

show_cursor(0);

srand(time(NULL));

//初始化結構體

for (i=0;i<100;i++)

{

st[i].x = rand()%80;

st[i].y = rand()%20;

st[i].ch = rand()%(49-47)+48;

}

while (1)

{

for (i=0;i<100;i++)

{

gotoxy(st[i].x,st[i].y);

set_color(0x2);//最先出現的顏色;

putchar(st[i].ch);

gotoxy(st[i].x,st[i].y-5);

putchar(' ');

st[i].y++;

st[i].ch = rand()%(49-47)+48;

if (st[i].y-5>=18)

{

gotoxy(st[i].x,st[i].y-1);

putchar(' ');

gotoxy(st[i].x,st[i].y-2);

putchar(' ');

gotoxy(st[i].x,st[i].y-3);

putchar(' ');

gotoxy(st[i].x,st[i].y-4);

putchar(' ');

gotoxy(st[i].x,st[i].y-4);

putchar(' ');

}

if (st[i].y > 23)

{

st[i].x = rand()%80;

st[i].y = rand()%20;

}

gotoxy(st[i].x,st[i].y);

set_color(0xA);//由前一個顏色漸變成的顏色

putchar(st[i].ch);

}

Sleep(120);

}

}

color(0);printf("黑色 ");color(1);printf("藍色 ");color(2);printf("綠色 ");color(3);printf("湖藍色 ");color(4);printf("紅色 ");color(5);printf("紫色 ");color(6);printf("黃色 ");color(7);printf("白色 ");color(8);printf("灰色 ");color(9);printf("淡藍色 ");color(10);printf("淡綠色 ");color(11);printf("淡淺綠色 ");color(12);printf("淡紅色 ");color(13);printf("淡紫色 ");color(14);printf("淡黃色 ");color(15);printf("亮白色 ")

幾個基本的顏色;

㈢ c語言現在正在下雨嗎死循環

你好,C語言中,強制終止死循環可以用CTRL+BREAK組合鍵或者CTRL+C組合鍵。
命令解釋:
CTRL+BREAK 設置或清除 DOS 系統的擴展。CTRL+C 檢測這個命令是為了與 DOS 系統的兼容而保留的,在 Windows里不起作用。如果命令擴展被啟用,並且操作平台是Windows,BREAK 命令會在被調試程序調試時輸入一個硬代碼中斷點。
通過CTRL+BREAK組合鍵或者CTRL+C組合鍵能夠實現中斷死循環。

㈣ c語言中 4&&5的值為什麼是1 4&5的值是多少 邏輯與和按位與有什麼區別

4&&5的值為1,這里的1是表示真。因為4和5都是非0值。非0即為真。真真得真。所以結果為1。

4&5的值為4。這里4的二進制是shu「100」,5的二進制是「101」。

按位與就是100&101=100(即十進制為4);

&&是邏輯運算符,兩個結果中有一個0結果才是0,比如0&&1,結果是0;1&&0,結果也是0。還有一個&是位運算符。

(4)c語言編程模擬下雨擴展閱讀:

在形式邏輯中,邏輯運算符或邏輯聯結詞把語句連接成更復雜的復雜語句。例如,假設有兩個邏輯命題,分別是「正在下雨」和「我在屋裡」,我們可以將它們組成復雜命題「正在下雨,並且我在屋裡」或「沒有正在下雨」或「如果正在下雨,那麼我在屋裡」。一個將兩個語句組成的新的語句或命題叫做復合語句或復合命題。

㈤ 怎麼用c寫 下雨或下雪的 程序

初始化
void Init_Data()
{
int i;
for( i=0; i< POINT; i++)
{
Snow[i].x=0;
Snow[i].y=0;
Snow[i].size=0;
}
for( i=0; i<MaxX; i++)
Map[i]=MaxY;
}
顯示:
void MakeSnow()
{
int i;
if( CurSnow>=POINT ) return;
for( i=0; Snow[i].size; i++ )
;
CurSnow++;
Snow[i].x=random(MaxX);
Snow[i].y=random(DOWNSPEED);
Snow[i].size=random(MaxSize)+1;

}
設定顯示坐標
void ShowSnow( int x, int y, int size, int flag )
{
int color=0;

if ( flag ) color=15;
switch( size )
{
case 1:
putpixel( x, y, color );
break;
case 2:
setcolor( color );
line( x-1, y-1, x+1, y+1 );
line( x-1, y+1, x+1, y-1 );
break;
case 3:
setcolor( color );
line( x-1, y-1, x+1, y+1 );
line( x-1, y+1, x+1, y-1 );
/*
line( x-2, y-2, x+2, y+2 );
line( x-2, y+2, x+2, y-2 );*/

line( x-2, y, x+2, y );
line( x, y-2, x, y+2 );
break;
}

}
雪花移動效果:
void Move( int n, int tox, int toy )
{
int x, y, size, i, j;
float person;

x=Snow[n].x;
y=Snow[n].y;
size=Snow[n].size;
/* check end */
j=y;
if( x<tox )
{
person=(DOWNSPEED *1.0) / ( tox-x )*1.0;
for( i=x; i<=tox; i++ )
{
if( j>=Map[i] )
{
tox=i-size;
break;
}
j+=(int)( (i-x+1)*person );
}
}
else if( x>tox )
{
person=(DOWNSPEED *1.0) / ( x-tox )*1.0;
for( i=x; i>=tox; i-- )
{
if( j>=Map[i] )
{
tox=i+size;
break;
}
j+=(int)( (x-i+1)*person );
}
}

if( y+DOWNSPEED>=Map[tox] )
{
switch( size )
{
case 1:
Map[x]--;
break;
case 2:
Map[x]-=2;
if( x>0 && Map[x-1]>Map[x] ) Map[x-1]=Map[x];
if( x<MaxX-1 && Map[x+1]>Map[x] ) Map[x+1]=Map[x];
break;
case 3:
Map[x]-=3;
if( x>1 && Map[x-2]>Map[x] ) Map[x-1]=Map[x];
if( x>0 && Map[x-1]>Map[x] ) Map[x-1]=Map[x];

if( x<MaxX-2 && Map[x+2]>Map[x] ) Map[x+1]=Map[x];
if( x<MaxX-1 && Map[x+1]>Map[x] ) Map[x+1]=Map[x];
break;
}
CurSnow--;
y=Map[x]+size;
Snow[n].x=x;
Snow[n].y=y;
Snow[n].size=0;
}
else /* not end */
{
Snow[n].x=tox;
Snow[n].y=toy;
}
}

㈥ C語言編寫程序

#include<stdio.h>
#include<stdlib.h>
#include<time.h>
intmain()
{
inttemperature;//溫度
intweather;//天氣
charstr_weather[5];
intwind;//風
srand((unsigned)time(0));//初始化隨機種子
temperature=rand()%63-20;//獲取-20到42的隨機數
while(1)
{
weather=rand()%3;//獲取天氣情況:0為雨,1為雪,2為晴
if(temperature<0&&weather==0)//如果溫度小於0度並且天氣為雨,則重新獲取
{
continue;
}
switch(weather)
{
case0:
strcpy(str_weather,"雨");
break;
case1:
strcpy(str_weather,"雪");
break;
case2:
strcpy(str_weather,"晴");
break;
}
break;//如果符合規則,則退出循環
}
wind=rand()%13;//獲取風級:0-12
printf("今天溫度:%d天氣:%s風級:%d級 ",temperature,str_weather,wind);
return0;
}