使用標準c語言,標準C語言

本文目錄一覽:

用標準C語言實現Hanoi塔問題

#includestdio.h

int count=0;

void move(char x,int n,char z);

void hanoi(int n ,char x,char y,char z)

{

if(n==1)

move(x,1,z);

else

{

hanoi(n-1,x,z,y);

move(x,n,z);

hanoi(n-1,y,x,z);

}

}

void move(char x,int n,char z)

{

printf(” %2i.Move disk %i from %c to %c\n”,++count,n,x,z);}

void main()

{

int n;

char x,y,z;

x=’A’;

y=’B’;

z=’C’;

scanf(“%d”,n);

hanoi(n,x,y,z);

printf(“\n”);

}

用標準C語言編寫學生信息管理系統

把我之前做的給你吧,差不多的

#includestdio.h

#includestdlib.h

#includestring.h

#include”conio.h”

#define N 50 //定義符號常量,代表學生人數最大值

int count=0; //全局變量,用於記錄數組的當前位置

struct student //定義結構體類型,代表學生信息*/

{

char name[9];

char number[10];

float math;

float english;

float physics;

float computer;

};

void input(struct student *arr); //函數聲明,輸入學生信息*/

void sort(struct student *arr); //函數聲明,按總分排序*/

void find(struct student *arr); //函數聲明,查找某位學生信息*/

void main()

{

char selmenu; //定義局部變量,用於記錄用戶選擇的功能編號*/

struct student stud[N]; //定義結構體數組,用於記錄學生信息*/

do //利用循環顯示界面*/

{

system(“cls”); //清屏函數*/

printf(“\n\n”);

printf(“歡迎使用學生管理系統\n”);

printf(“————————\n”);

printf(“學生成績管理系統 \n\n”);

printf(“1.輸入學生信息 \n”);

printf(“2.按總分進行排榜 \n”);

printf(“3.查找相應的學生信息 \n”);

printf(“4.退出學生成績管理系統 \n\n”);

printf(“請輸入功能選擇編號:”);

fflush(stdin); //清空輸入緩衝區

scanf(“%c”,selmenu); //接受用戶選擇的功能編號

switch(selmenu) //輸入不同功能編號調用相應函數來完成功能

{

case’1′:

input(stud); //調用輸入學生信息函數,參數為學生信息數組名

break;

case’2′:

sort(stud); //調用按總分排榜函數,參數是數組名

break;

case’3′:

find(stud); //調用按學號和姓名查找學生信息函數

break;

}

}while(selmenu!=’4′); //判斷是否退出

printf(“*^-^* 謝謝使用 *^-^*\n”); //輸出告別詞

printf(” 任務完成 “);

getch();

}

void input(struct student *arr) //定義輸入學生信息函數

{

char ch; //用於接收用戶指令

do //利用循環,由用戶控制輸入學生成績

{

system(“cls”);

printf(“\n輸入第%d個學生的信息:\n輸入學生姓名:”,count+1);

scanf(“%s”,arr[count].name);

printf(“\n輸入學生學號:”);

scanf(“%s”,arr[count].number);

printf(“\n輸入數學成績:”);

scanf(“%f”,arr[count].math);

printf(“\n輸入英語成績:”);

scanf(“%f”,arr[count].english);

printf(“\n輸入物理成績:”);

scanf(“%f”,arr[count].physics);

printf(“\n輸入計算機成績:”);

scanf(“%f”,arr[count].computer);

count++; //記錄當前輸入的學生資料的個數

printf(“\n是否繼續輸入(y/n)\n”);

fflush(stdin); //清空輸入緩衝區

ch=getchar();

}while(ch==’y’||ch==’Y’); //判斷用戶指令,是否繼續輸入

}

void sort(struct student *arr) //定義按總分排榜函數

{

int i,j,k; //定義循環變量i,j,最小數位置k

struct student t; //定義交換臨時變量

if(count==0) //判斷數組中學生成績是否存在

printf(“無學生成績,請先錄入學生信息\n”);

else

{

for(i=0;icount-1;i++) //用選擇法按總分對學生成績排序

{

k=i;

for(j=i+1;jcount;j++) //k為arr[i]到arr[count-1]中最小數的位置

if((arr[k].math+arr[k].english+arr[k].physics+arr[k].computer)(arr[j].math+arr[j].english+arr[j].physics+arr[j].computer))

k=j;

if(k!=i) //如果最小數不是比較數列中第一個,對調

{

t=arr[k];

arr[k]=arr[i];

arr[i]=t;

}

}

printf(“\n總分排榜版:\n\n”);

printf(“\t姓名\t學號\t數學\t英語\t物理\t計算機\t總分\t名次\n”);

for(j=0;jcount;j++) //輸出按總分排榜後的學生成績和名次

printf(“\t%-6s\t%-4s\t%-6.1f\t%-6.1f\t%-6.1f\t%-6.1f\t%-6.1f\t%-5d\n”,

arr[j].name,arr[j].number,arr[j].math,arr[j].english,arr[j].physics,arr[j].computer,arr[j].math+arr[j].english,j+1);

}

printf(“\n回車鍵返回主程序\n”);

fflush(stdin);

getchar();

}

void find(struct student *arr) //定義查找函數

{

int j;

char name[9]; //用於接收用戶輸入的學生姓名

char number[10]; //用於接收用戶輸入的學生學號

system(“cls”); //清屏函數

printf(“\n請輸入要查找的學生資料:\n”);

printf(“\n學生姓名:”);

scanf(“%s”,name);

printf(“\n學生學號:”);

scanf(“%s”,number);

for(j=0;jcount;j++) //使用字符串比較函數查找兵書出符合條件的學生成績

{

if((strcmp(name,arr[j].name)==0)(strcmp(number,arr[j].number)==0))

{

printf(“\n\t姓名\t學號\t數學\t英語\t物理\t計算機\t總分\n”);

printf(“\t%-6s\t%-4s\t%-6.1f\t%-6.1f\t%-6.1f\t%-6.1f\t%-6.1f\n”,

arr[j].name,arr[j].number,arr[j].math,arr[j].english,arr[j].physics,arr[j].computer,arr[j].math+arr[j].english);

break;

}

}

if(j=count) //如果沒找到,會從循環條件退出

printf(“\n未找到該學生紀錄,請核對後重新查找!\n”);

fflush(stdin); //清空輸入緩衝區

printf(“\n回車鍵返回\n”);

getchar();

}

C51編程時,可以使用標準C語言的所有數據類型。為什麼「編程時常用unsigned c

這體現了嵌農和碼農的價值觀區別。

嵌農會精心計算一個變量的範圍,而碼農很少這麼做,因為碼農默認的數值類型一般是int32,可以滿足日常範圍需求,甚至像Python那樣的語言自帶大整數特性,根本不用考慮範圍。然而嵌農呢,尤其是你說的c51,是個Intel祖傳8位機,本來ram就很少,當然要精心考慮變量的大小了。像int32這樣的東西太奢侈了,只能精打細算,根據現實情況精選一個範圍合適的類型。鑒於大部分情況並不需要負數,所以用unsigned類型能提高0以上的數值範圍。另外需要指出的是很多c51編譯器里int類型是16位的。所以嵌農的悲傷就在這裡,別人已經開始寫算法了,你還在研究這個變量存不存得下的問題。

C51語言,由C語言繼承而來的單片機編程語言。

和C語言不同的是,C51語言運行於單片機平台,而C語言則運行於普通的桌面平台。C51語言具有C語言結構清晰的優點,便於學習,同時具有彙編語言的硬件操作能力。對於具有C語言編程基礎的讀者,能夠輕鬆地掌握單片機C51語言的程序設計。

怎樣用標準C語言播放音樂?

用C語言播放音樂,一般需要額外的庫或者調用系統的API函數。

以Windows為例,可以通過PlaySound函數播放wav格式的音樂。示例如下:

#includestdio.h

#includewindows.h

#includemmsystem.h

#pragma comment(lib, “WINMM.LIB”)

int main()

{

PlaySound(TEXT(“1.wav”),0,SND_FILENAME); //1.wav是要播放的音樂文件

return 0;

}

如果想播放mp3音樂可以使用如下代碼。

注意:生成程序後,請在cmd中執行此程序,不要在vc/vs的IDE中運行。

#include windows.h

#include mmsystem.h

#include stdio.h

#pragma comment(lib, “Winmm.lib”)

int main(int argc, char *argv[])

{

     //絕對地址形式

    TCHAR fileName[]=”ganlusi.mp3″;

    TCHAR shortName[MAX_PATH];

    GetShortPathName(fileName,shortName,sizeof(shortName)/sizeof(TCHAR));

    TCHAR cmd[MAX_PATH+10];

    wsprintf(cmd,”play %s”,shortName);

    mciSendString(cmd,NULL, 0, NULL);

    Sleep(5 * 60 * 1000); //這裡是防止一播放就結束做的延遲

      return 0;

}

使用標準C語言,將字符數組s2中的全部字符複製到在字符數組s1中。

設計思路:

1、定義2個大小相等的字符數組s1[N]和s2[N]

2、提示輸入字符數組s2,輸入字符數組s2

3、統計字符串s2的長度k

4、將字符數組s2的下標為0到k的元素賦值給s1

5、輸出字符數組s1

程序:

#includestdio.h

#define N 100

void main()

{

char s1[N],s2[N];

int i,k=0;

printf(“輸入字符數組s2\n”);

scanf(“%s”,s2);

for(i=0;s2[i]!=’\0′;i++)k++;

for(i=0;i=k;i++)s1[i]=s2[i];

printf(“%s\n”,s1);

}

結果:

輸入字符數組s2

engsing

engsing

Press any key to continue

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

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

相關推薦

  • 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

發表回復

登錄後才能評論