c語言環形變量,c語言變量語句

本文目錄一覽:

在C語言中怎麼環形交換三個數的值?

通過賦值,將右邊的值賦給左邊。

例如創建三個整型變量:int a,b,c;

a=10,b=20,c=30;

先定義一個中間變量:int mid;

mid=a;

a=b;

b=c;

c=mid;

這樣就把b的值賦給a,c的值賦給b,a的值賦給c

C語言 環形排序

#include stdio.h

#include time.h

#include stdlib.h

void Graph(char rect[9]);

int main()

{

int i,j,k;

char Cyc[9]={0};//Cyc[0]到Cyc[7]用於保存8個數,Cyc[8]為空白區

int CurNode=9,Temp;

srand((unsigned int)time(NULL));

for(i=0;i8;i++)//隨機產生序列

{

Cyc[i]=(rand()%8)+1;

if(CurNode==9 Cyc[i]==1) CurNode=i;//記錄數字1的位置

for(j=0;ji;j++)

{

if(Cyc[i]==Cyc[j])

{

i–;

break;

}

}

}

printf(“原始狀態:\n”);

Graph(Cyc);

printf(“開始移動:\n”);

for(i=2;i=8;i++)//下一個要找的數

{

for(j=0;j8;j++)//掃描找數

{

if(Cyc[j]==i)

{

Temp=(CurNode+1)%8;

if(i!=Cyc[Temp])//如果位置正確就不用再移

{

Cyc[8]=i;//移入中心區

Cyc[j]=0;

Graph(Cyc);

if(Temp!=j)

{

if(Tempj) j+=8;

for(k=j;kTemp;k–)

{

Cyc[k%8]=Cyc[(k-1)%8];//順時針輪轉

}

Cyc[Temp]=0;

Graph(Cyc);

}

Cyc[Temp]=Cyc[8];//從中心區移出

Cyc[8]=0;

Graph(Cyc);

}

CurNode=Temp;//記錄當前位置

break;

}

}

}

printf(“移動完成!\n”);

return 1;

}

void Graph(char rect[9])

{

int i;

char buf[9];

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

{

if(rect[i]) buf[i]=rect[i]+48;

else buf[i]=’ ‘;

}

printf(“%c-%c-%c\n”,buf[0],buf[1],buf[2]);

printf(“|\\|/|\n”);

printf(“%c-%c-%c\n”,buf[7],buf[8],buf[3]);

printf(“|/|\\|\n”);

printf(“%c-%c-%c\n\n”,buf[6],buf[5],buf[4]);

}

C語言,可以的話講一下每一步唄。求大佬幫忙

思路:

圓環體積就是大圓柱-小圓柱。

總表面積就是兩個側面積+兩個大圓面積-兩個小圓面積。

算法不止一種,這裡不是重點。重點是如何轉換成編程思想。

1、根據題意,要使用結構體封裝參數,因此需定義一個包含全部圓環參數的結構類型。

2、圓環參數需要輸入,因此要定義一個輸入函數,負責輸入參數,驗證參數,並存儲到對應的結構變量。

3、解析功能需求,實現體積和面積分別需要計算圓的面積、周長和柱側面積。所以程序應包含所有實現功能的函數,分別為:計算圓面積,計算圓周長,計算圓柱側面積,計算圓柱體積。

(這裡部分函數很簡單,你可能想為什麼不直接寫在main函數中,因為這些代碼在項目中可能會被多次重複調用,寫成獨立函數調用更簡潔,且方便閱讀、修改,這是一種編程思想)。

以下是我寫代碼,已詳細備註:

#include stdio.h

#define PI 3.1415926

typedef struct ringClass//定義一個圓環結構類型

{

  double r;//外圓半徑

  double rh;//內圓半徑

  double h;//高

}RC;

void SetRC(RC *prc);//給圓環結構輸入賦值,參數傳遞結構變量地址!

double getRP(double pr);//獲取圓周長的函數,參數是圓的半徑

double getrRA(double pr);//獲取圓面積的函數,參數是圓的半徑

double getRCArea(RC rc);//獲取圓環體表面積的函數

double getRCVolume(RC rc);//獲取圓環體體積的函數

int main( )

{

  RC rc={0,0,0};//定義一個圓環結構變量並初始化

  SetRC(rc);

  printf(“圓環表面結為:%lf\n”,getRCArea(rc));

  printf(“圓環的體積為:%lf\n”,getRCVolume(rc));

  return 0;

}

void SetRC(RC *prc)//給圓環結構輸入賦值

{

  printf(“請輸入分別圓環的參數:\n”);

  printf(“外圓半徑:”),scanf(“%lf”,(prc-r));

  printf(“內圓半徑:”),scanf(“%lf”,(prc-rh));

  printf(“圓環的高:”),scanf(“%lf”,(prc-h));

  if(prc-r=prc-rh)

  {

      printf(“無效輸入!外圓半徑必須大於內圓半徑\n\n”);

      SetRC(prc);

  }

  else printf(“輸入成功,參數為:r=%lf,rh=%lf,h=%lf\n”,prc-r,prc-rh,prc-h);

}

double getRCVolume(RC rc)//獲取環體積

{

  double d1,d2,v1,v2;

  d1=getrRA(rc.r);//獲取外圓柱頂圓面積

  d2=getrRA(rc.rh);//獲取內圓柱頂圓面積

  v1=d1*rc.h;//獲取大圓柱體體積

  v2=d2*rc.h;//獲取小圓柱體體積

  return v1-v2;//圓環體積就是大圓柱-小圓柱

}

double getRCArea(RC rc)//獲取環表面積

{

  double pr1,pr2,c1,c2,d1,d2;

  pr1=getRP(rc.r);//獲取外圓柱體頂圓周長

  pr2=getRP(rc.rh);//獲取內圓柱體頂圓周長

  c1=pr1*rc.h;//獲取外圓柱體的側面積,頂圓周長乘以高

  c2=pr2*rc.h;//獲取內圓柱體的側面積

  d1=getrRA(rc.r);//獲取外圓柱頂圓面積

  d2=getrRA(rc.rh);//獲取內圓柱頂圓面積

  return c1+c2+d1+d1-d2-d2;//總表面積就是兩個側面積+兩個大圓面積-兩個小圓面積

}

double getRP(double pr)//獲取圓周長

{

  return 2*PI*pr;

}

double getrRA(double pr)//獲取圓面積

{

  return PI*pr*pr;

}

C語言課程 定義pi字符常量,輸入大圓,小圓半徑,求出圓環的面積

思路:圓環的面積就是大圓的面積減去小圓的面積,先定義兩個變量r1,r2,接着輸出兩個圓的差就是圓環的面積。

參考代碼:

#include stdio.h

#define PI 3.14

int main()

{

float r1,r2;

scanf(“%f %f”,r1,r2);

printf(“%.2f\n”,r1*r1*PI-r2*r2*PI);

return 0;

}

/*

輸出:

5 3

50.24

*/

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

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-11-21 01:13
下一篇 2024-11-21 01:13

相關推薦

  • int類型變量的細節與注意事項

    本文將從 int 類型變量的定義、聲明、初始化、範圍、運算和類型轉換等方面,對 int 類型變量進行詳細闡述和講解,幫助讀者更好地掌握和應用 int 變量。 一、定義與聲明 int…

    編程 2025-04-29
  • Python3支持多行語句

    Python3是一種高級編程語言,開發人員可以輕鬆地使用該語言編寫簡單到複雜的代碼。其中Python3支持多行語句,方便開發人員編寫複雜的代碼,提高代碼的可讀性和可維護性。 一、使…

    編程 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 for循環語句打印九九乘法表

    本篇文章將詳細介紹如何使用Python的for循環語句打印九九乘法表。打印九九乘法表是我們初學Python時經常練習的一項基礎操作,也是編寫Python程序的基本能力之一。 1、基…

    編程 2025-04-29
  • Python input參數變量用法介紹

    本文將從多個方面對Python input括號里參數變量進行闡述與詳解,並提供相應的代碼示例。 一、基本介紹 Python input()函數用於獲取用戶輸入。當程序運行到inpu…

    編程 2025-04-29
  • Python被稱為膠水語言

    Python作為一種跨平台的解釋性高級語言,最大的特點是被稱為”膠水語言”。 一、簡單易學 Python的語法簡單易學,更加人性化,這使得它成為了初學者的入…

    編程 2025-04-29
  • Python匿名變量的使用方法

    Python中的匿名變量是指使用「_」來代替變量名的特殊變量。這篇文章將從多個方面介紹匿名變量的使用方法。 一、作為佔位符 匿名變量通常用作佔位符,用於代替一個不需要使用的變量。例…

    編程 2025-04-29
  • OpenJudge答案1.6的C語言實現

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

    編程 2025-04-29
  • Python中while語句和for語句的區別

    while語句和for語句是Python中兩種常見的循環語句,它們都可以用於重複執行一段代碼。然而,它們的語法和適用場景有所不同。本文將從多個方面詳細闡述Python中while語…

    編程 2025-04-29

發表回復

登錄後才能評論