牛人c語言,c語言大牛

本文目錄一覽:

求助C語言牛人

冒泡排序是:相鄰兩數兩兩比較,進行相鄰大小的交換,共進行N-1次,每輪 進行N-1-i次.核心程序段為:

for(i=0;iN-1;i++)

{

for(j=0;jN-i-1;j++)

if(a[j]a[j+1])

{temp=a[j];a[j]=a[j+1];a[j+1]=temp}

}

選折排序是:首數與後數進行兩兩相比,按大小進行交換,共進行N-1次,每輪進行N-1次,每輪進行從i+1開始N-1為止。核心程序段為:

for(i=0;iN-1;i++)

{

for(j=i+1;jN-1;j++)

if(a[i]a[j])

{temp=a[i];a[i]=a[j];a[j]=temp}

}

注意了與冒泡排序的核心段的區別在於:

(1)交換的兩個對象:冒泡是 a[j]a[j+1]

選折是 a[i]a[j]

(2)輪次的變化: 冒泡是 for(j=0;jN-i-1;j++)

選折是 for(j=i+1;jN-1;j++)

冒泡的形式是:a[n]與啊a[n+1]比較交換

選折的形式則是:

第一次 a[0]與以後的比較交換

第二次 a[1]與以後的比較交換

……..

第n次是a[n]與以後的比較交換

C語言牛人請進

# include stdio.h

# include math.h

int main (void)

{

double a,b;

double j,k;

printf(“請輸入 a = “);

scanf(“%lf”, a);

printf(“請輸入 b = “);

scanf(“%lf”, b);

j = sin(a);

k = sin(b);

printf(“b的正弦值為:%lf\n”, j);

printf(“b的正弦值為:%lf\n”, k);

if(j k)

printf(“a的正弦值大,值為:%lf\n”, j);

else

printf(“b的正弦值大,值為:%lf\n”, k);

return 0;

}

求助C語言牛人···很簡單的作業

首先,我要說的是這是很基礎的問題,需要努力啊!

我給你提供了兩種交換排序方法,在程序中選擇其中一個即可。另外給你提供了選擇排序方法。程序運行無誤。

#includestdio.h

void bubble_sort(int a[],int len)

{

int i=0,j=0;

int temp=0,flag=0; //flag 為交換標誌,對代碼優化

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

{

flag=0;

for(j=len-2;j=i;j–)

{

if(a[j+1]a[j])

{

temp=a[j];

a[j]=a[j+1];

a[j+1]=temp;

flag=1;

}

}

if(flag!=1)

return;

}

}

void quick_sort(int a[],int low,int high)

{

int i,j,m;

if(lowhigh)

{

m=a[low];

i=low;

j=high;

while(ij)

{

while(ija[j]=m)

j–;

if(ij)

a[i++]=a[j];

while(ija[i]=m)

i++;

if(ij)

a[j–]=a[i];

}

a[i]=m;

quick_sort(a,low,i-1);

quick_sort(a,i+1,high);

}

}

void select_sort(int a[],int len)

{

int i,j,x,l;

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

{

x=a[i];

l=i;

for(j=i;jlen;j++)

{

if(a[j]x)

{

x=a[j];

l=j;

}

}

a[l]=a[i];

a[i]=x;

}

}

void main()

{

int a[10],i;

printf(“請輸入10個整數\n”);

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

scanf(“%d”,a[i]);

bubble_sort(a,10);//交換排序方法一:冒泡法

// quick_sort(a,0,9);//交換排序方法二:快速排序

select_sort(a,10);//選擇排序

printf(“排序後:\n”);

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

printf(“%d “,a[i]);

printf(“\n”);

}

不用急了,別忘了懸賞啊!哈哈。

那位牛人,用C語言寫一個二進制轉化為十進制的程序!!??

一下兩個程序均在VC在編譯通過。

/*

如果這個二進制數比較大的話, 大到只能用數組儲存這個二進制數,

當然如果大到轉化成10進制int存不下的情況那另當別論

*/

#includestdio.h

#includestring.h

int main()

{

char a[33];

int i, num = 0;

scanf(“%s”, a);

for(i=strlen(a)-1; i=0; i–)

{

num*=2; /*如果用位運算的話,速度會更快*/

num+=a[i]-‘0’;

}

printf(“%d\n”, num);

return 0;

}

/*

如果這個二進制數的位數不超過10位的話

可用這個程序

*/

#includestdio.h

int main()

{

int num = 0, a, j=1;

scanf(“%d”, a);

while(a)

{

num += (a%10) * j;

a /= 10;

j *= 2;

}

printf(“%d\n”, num);

return 0;

}

C語言牛人:代碼求修改?跪謝!

主要問題有4個,小問題也不少:

(1)輸入輸出沒有按照題目的格式。

(2)找最大最小的時候,只要記錄位置,不用交換元素。

(3)t1,t2根本就沒有聲明。

(4)數組最大是a[9],不是a[10]

改正後的程序為:

# includestdio.h

# includeconio.h

# define N 10

int main()

{

    int N = 10;

    int i, a[10], *p, *pmin, *pmax, t;

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

    scanf(“%d,”, a[i]);

    p = a[0]; pmax = a[0]; pmin = a[0];

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

    {

        if (*(p + i)  *pmax)

        {  pmax = (p + i); }

        else if (*(p + i)  *pmin)

        { pmin = (p + i);  }

    }//找出最大和最小的數值 

    t = *pmin; *pmin = a[0]; a[0] = t;

    t = *pmax; *pmax = a[9]; a[9] = t;

    //交換 

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

        printf(“%d,”, *(p + i));

    printf(“\n”);

    return 0;

}

結果為:

求C語言牛人解釋一下

V飄渺V上次那個解釋裡面有個地方有問題,又改寫了一下。有郵箱的話留下我重新傳給你。

#includegraphics.h

#includemath.h

#includedos.h

#define pi 3.1415926

#define X(a,b,c) x=a*cos(b*c*pi/180-pi/2)+300;

#define Y(a,b,c) y=a*sin(b*c*pi/180-pi/2)+240;

#define d(a,b,c) X(a,b,c);Y(a,b,c);line(300,240,x,y)

void init()/* 畫圖函數 */

{int i,l,x1,x2,y1,y2;

setbkcolor(0); /* 設置背景色為黑色(顏色數值為0) */

circle(300,240,200);/* 畫圓,圓中心(300,240),半徑200,之所以如此是因為屏幕尺寸為640×480,這樣設置坐標可以使圓靠近屏幕中心 */

circle(300,240,205); /* 再畫一個同心圓,半徑205,產生具有立體感的時鐘錶盤 */

circle(300,240,5); /* 畫中心的兩個小圓,半徑分別為5,10 */

circle(300,240,10); /* 本來畫出的圓變成了橢圓,這是因為顯示器不是正方形(640×480),x,y方向不同有壓縮比,有時可設比例因子k=480/640變換成接近圓形輸出 */

line(295,60,300,80);/*以下畫圖形’XII’,均為用小線段繪製,下同 */

line(295,80,300,60);

line(302,60,302,80);

line(304,60,304,80);

line(301,60,305,60);

line(301,80,305,80);

line(468,230,468,250);/*以下畫圖形’III’ */

line(473,230,473,250);

line(478,230,478,250);

line(467,230,479,230);

line(467,250,479,250);

line(294,400,297,420);/*以下畫圖形’VI’ */

line(297,420,300,400);

line(303,400,303,420);

line(302,400,304,400);

line(302,420,304,420);

line(125,230,135,250);/*以下畫圖形’IX’ */

line(125,250,135,230);

line(122,230,122,250);

line(121,230,123,230);

line(121,250,123,250);

for(i=0;i60;i++)/* 畫錶盤上上的60個小刻度,長度為5,每個刻度代表1分鐘 */

{if(i%5==0) l=15;/* 每第5個刻度代表整點小時,長度為1 */

else l=5;

x1=200*cos(i*6*pi/180)+300;/* 利用圓的參數方程形式確定各刻度的起點坐標 */

y1=200*sin(i*6*pi/180)+240;

x2=(200-l)*cos(i*6*pi/180)+300;/* 同理確定終點坐標 */

y2=(200-l)*sin(i*6*pi/180)+240;

line(x1,y1,x2,y2);/* 從起點到終點畫線,表示各個刻度 */

}

}

main()

{

int x,y;

int gd=VGA,gm=2;/* 採用VGA驅動方式,顯示模式為2(VGAHI 分辨率640×480 16色) */

unsigned char h,m,s;/* 定義字符時,分,秒,個人感覺這裡應該定義成int型而非char型 */

struct time t[1]; /* 定義t[1]為time結構體類型 */

initgraph(gd,gm,”d:\\tc”); /* 初始化,設置屏幕為圖形工作模式,參數“d:\\tc”指定驅動程序存放的位置是d:\tc文件夾 */

init();/* 調用畫圖函數 */

setwritemode(1);/* 設置圖形方式下畫線的輸出模式,這裡為方式1(異或方式) */

gettime(t);/* 調用獲得dos形式的當前時間並存入t所指向的結構體struct time中 */

h=t[0].ti_hour;/* 小時數給h */

m=t[0].ti_min; /* 分鐘數給m */

s=t[0].ti_sec; /* 秒給s */

setcolor(7); /* 設置繪圖色為淡灰色LIGHTGRAY(顏色數值為7) */

d(150,h,30);/* 用淡灰色畫時鐘的時針,h在變化故時針會隨之變化位置,時針線段起點為錶盤的中心(300,240) */

setcolor(14);/* 設置繪圖色為黃色YELLOW(顏色數值為14) */

d(170,m,6); /* 用黃色畫時鐘的分針,m在變化故分針會隨之變化位置,分針線段起點也為錶盤的中心(300,240) */

setcolor(4);/* 設置繪圖色為紅色RED(顏色數值為4) */

d(190,s,6); /* 用紅色畫時鐘的秒針,s在變化故秒針會隨之變化位置,秒針線段起點也為錶盤的中心(300,240) */

while(!kbhit())/* 按任一鍵結束如下循環 */

{while(t[0].ti_sec==s)/* 如果換算得到的時間秒等於整秒數s */

gettime(t);/* 重新調用函數gettime獲得系統時間 */

sound(400);/* 調用發聲函數使揚聲器發頻率400Hz(人耳聽力範圍20-20000Hz)聲音 */

delay(70); /* 延時70毫秒 */

sound(200);/* 再發頻率200Hz聲音 */

delay(30);/* 延時30毫秒 */

nosound();/* 關閉揚聲器 */

setcolor(4); /* 設置繪圖色為紅色RED(顏色數值為4) */

d(190,s,6); /* 重新畫秒針 */

s=t[0].ti_sec;/* gettime獲得系統時間經換算秒數給s */

d(190,s,6);/* 再畫秒針,秒針每一秒位置變化一次 */

if (t[0].ti_min!=m)/* 如果gettime獲得系統時間計算得出的時間分和前面的m不同,說明秒針已記滿60,時間分應加1以和系統時間同步 */

{/* 分種數值增加位置必然變化 */

setcolor(14);/* 再設置畫圖顏色,畫分針原來位置 */

d(170,m,6);

m=t[0].ti_min;/* 同時把當前實際時間分給m */

d(170,m,6); /* 畫當前分針位置 */

}

if (t[0].ti_hour!=h)/* 如果gettime獲得系統時間計算得出的時間小時和前面的h不同,說明分針已記滿60,時間小時應加1以和系統時間同步 */

{ setcolor(7);/* 設置繪圖色畫時針原來位置 */

d(150,h,30);

h=t[0].ti_hour;/* 同時把當前實際時間小時給h */

d(150,h,30); /* 畫時針當前位置 */

sound(1000);/* 發頻率1000Hz聲音 */

delay(240);/* 延時240毫秒 */

nosound(); /* 關閉揚聲器 */

delay(140);/* 延時140毫秒 */

sound(2000);/* 發頻率2000Hz聲音 */

delay(240); /* 延時240毫秒 */

nosound(); /* 關閉揚聲器 */

settextstyle(0,1,1);/* 圖形方式下設置當前要顯示的文本屬性 */

outtextxy(300,420,”XII”);/* 從坐標(300,420)開始輸出顯示文本XII,由於上面已經畫出了XII,所以這句和上面一句均多餘,應該去掉 */

}

}

getch();

closegraph();

}

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

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

相關推薦

  • 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
  • OpenJudge答案1.6的C語言實現

    本文將從多個方面詳細闡述OpenJudge答案1.6在C語言中的實現方法,幫助初學者更好地學習和理解。 一、需求概述 OpenJudge答案1.6的要求是,輸入兩個整數a和b,輸出…

    編程 2025-04-29
  • Python按位運算符和C語言

    本文將從多個方面詳細闡述Python按位運算符和C語言的相關內容,並給出相應的代碼示例。 一、概述 Python是一種動態的、面向對象的編程語言,其按位運算符是用於按位操作的運算符…

    編程 2025-04-29
  • Python語言由荷蘭人為中心的全能編程開發工程師

    Python語言是一種高級語言,很多編程開發工程師都喜歡使用Python語言進行開發。Python語言的創始人是荷蘭人Guido van Rossum,他在1989年聖誕節期間開始…

    編程 2025-04-28
  • Python語言設計基礎第2版PDF

    Python語言設計基礎第2版PDF是一本介紹Python編程語言的經典教材。本篇文章將從多個方面對該教材進行詳細的闡述和介紹。 一、基礎知識 本教材中介紹了Python編程語言的…

    編程 2025-04-28
  • Python語言實現人名最多數統計

    本文將從幾個方面詳細介紹Python語言實現人名最多數統計的方法和應用。 一、Python實現人名最多數統計的基礎 1、首先,我們需要了解Python語言的一些基礎知識,如列表、字…

    編程 2025-04-28
  • Python作為中心語言,在編程中取代C語言的優勢和挑戰

    Python一直以其簡單易懂的語法和高效的編碼環境而著名。然而,它最近的發展趨勢表明Python的使用範圍已經從腳本語言擴展到了從Web應用到機器學習等廣泛的開發領域。與此同時,C…

    編程 2025-04-28
  • Python基礎語言

    Python作為一種高級編程語言擁有簡潔優雅的語法。在本文中,我們將從多個方面探究Python基礎語言的特點以及使用技巧。 一、數據類型 Python基礎數據類型包括整數、浮點數、…

    編程 2025-04-28

發表回復

登錄後才能評論