(完整版)c語言初學(xué)必背代碼_第1頁
(完整版)c語言初學(xué)必背代碼_第2頁
(完整版)c語言初學(xué)必背代碼_第3頁
已閱讀5頁,還剩3頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、printf("sum=%dn", sum);#include <stdio.h>int main()/ 成績int score;printf(" 請輸入你的成績 :n");scanf("%d", &score);/ 判斷if(score >=0 && score < 60)printf(" 不及格 n");else if(60 <= score && score < 80)printf(" 中等 n");else if

2、(80 <= score && score < 100)printf(" 優(yōu)秀 n");elseprintf("輸入錯誤!n");/3. 最大公約數(shù)#include <stdio.h>/ 求 m,n 的最大公約數(shù)int main()int m, n;int i, k;printf(" 請輸入兩個數(shù) :");scanf("%d %d", &m, &n);/ 三元運算符找較小的那個k = m < n ? m : n;/ 從較小的那個數(shù)倒著往前找for(i=k

3、; i>=1; i-)/ 這是公約數(shù)if(m % i = 0) && (n % i =0)printf(" 最大公約數(shù)是 %dn", i);break; / 跳出 for 循環(huán)/4. 最小公倍數(shù) /2. 計算 1 到 100 的和#include <stdio.h>int main()int sum = 0; / 存結(jié)果變量int i;for(i=1;i <= 100;i+)sum = sum + i;#include <stdio.h>/ 求 m,n 的最小公倍數(shù)int main()int m, n;int max, m

4、in; /m,n 中較大 ,較小的那 個int k;/max, 2*max, 3*max, printf(" 請輸入兩個數(shù) :"); scanf("%d %d", &m, &n);/也可以交換 m,n,保證m小n大 max = m > n ? m : n;min = m < n ? m : n;k = max; / 從 max 開始while(k % min != 0)k += max; / 每次倍增printf(" 最小公倍數(shù)是 %dn", k);/5. 金字塔#include <stdio.h&g

5、t; /金字塔 int main()int i;/ 外層int j;/ 內(nèi)層for(i=1;i<=10;i+)/當(dāng)前是在第 i 行 /先補空格 10-i 個 for(j=1;j<=10-i;j+) printf(" ");/ 再打 2i-1 個* for(j=1;j<=2*i-1;j+) printf("*"); printf("n");/6. 九九乘法表#include <stdio.h>/ 打印九九乘法表int main()int i,j;for(i=1;i<=9;i+) /外層一定是 9行fo

6、r(j=1; j<=i; j+) /內(nèi)層第幾行走幾遍printf("%d*%d=%d ", i, j, i*j);printf("n");/7. 百錢買百雞#include <stdio.h>/*百錢買百雞 ,類似 1,2,5湊 100銀幣問題*/int main2()int i,j;公雞,母雞個數(shù)for(i=0; i<=20; i+)/ 公雞for(j=0; j<=33; j+) /母雞if( (15*i + 9*j + (100-i-j) = 300)printf("公雞d,母雞d,小雞 %dn",

7、i, j, 100-i-j);sum += ai;if(ai < min) / 比最小值還小 min = ai;/ 你才是最小/1,2,5 湊 100 銀幣問題int main3()int count = 0; / 情況數(shù)int i,j;/5 分個數(shù), 2 分個數(shù)for(i=0; i<=20; i+) /5 分個數(shù)for(j=0; j<=50; j+) /2 分個數(shù)if( ( 5*i + 2*j ) <= 100 )count+;printf("%d: 5 分%d個,2 分%d 個,1 分 %d 個 n", cou nt, i, j, 100-5*i

8、-2*j);/8. 一維數(shù)組的最大值、最小值、平均值#include <stdio.h>#define N 10/宏定義常量int main()int i;/ 下標(biāo)索引int max, min;double sum = 0; / 累加和int aN = 58, 58, 96, 100, 25, 55, 66, 88, 99, 77;max = a0;/ 假設(shè)第一個最大min = a0;/ 假設(shè)第一個最小for(i=1; i<N; i+)if(ai > max) / 比最大值還大 max = ai; / 你才是最大printf("max=%d, min=%dn&

9、quot;, max, min); printf("average = %.2lfn", sum/N);/9. 二維數(shù)組的最大值、最小值、平均值#include <stdio.h>int main()int i; / 第幾行int j; /第幾列int a34 = 1,2,3,4, 5,-6,7,8, 9,19,39,0;int max = a00; 假設(shè)你最大 int min = a00; /假設(shè)你最小 double average; / 平均值 double sum = 0; /總和 for(i=0; i<3; i+) /必定 3 行 for(j=0;

10、 j<4; j+) / 必定 4 列printf("%5d ", aij);sum += aij;if(aij > max) max = aij;if(aij < min) min = aij;printf("n");average = sum / (3*4);printf("max=%d, min=%d, avg=%.2lfn", max, min, average);#include <stdio.h>/ 二維數(shù)組轉(zhuǎn)置:行變列,列變行 int main()int i; / 第幾行int j; / 第幾

11、列int a34 = 1,2,3,4, 5,-6,7,8, 9,19,39,0;int b43;for(i=0; i<3; i+)for(j=0; j<4; j+)printf("%5d", aij); printf("n");/ 矩陣轉(zhuǎn)置 for(i=0; i<3; i+)for(j=0; j<4; j+)bji = aij;for(i=0; i<4; i+)for(j=0; j<3; j+) printf("%5d", bij); printf("n");#include &

12、lt;stdio.h>#define N 10 int main()int i;int j;int tmp;/ 宏定義常量/ 下標(biāo)索引/ 臨時交換用int aN = 58, 58, 96, 100, 25, 55, 66, 88, 99, 77;/ 外層循環(huán)一定是 N-1for(i=0; i<N-1; i+)/ 兩兩交換,大的往后走 for(j=0; j<N-i-1; j+)/ 交換if(aj > aj+1)tmp = aj; aj = aj+1; aj+1 = tmp;for(i=0; i<N; i+) printf("%d ", ai);

13、printf("n");#include <stdio.h>/12. 結(jié)構(gòu)冒泡排序/結(jié)構(gòu)定義 ,用戶自定義類型 typedef struct student char sno20; / 學(xué)號 char name20; / 姓名 int age; / 年齡 char gender;/ 性別 char tel20; / 電話;int main()int i;int j;double sum = 0;struct student tmp; / 兩兩交換臨時用 ;/ 結(jié)構(gòu)數(shù)組struct student team5; for(i=0; i<5; i+)printf

14、("請輸入第%d個隊員的信息:n", i+1);scanf("%s %s %d %c %s", teami.sno, , &teami.age, &teami.gender, teami.tel);/ 按年齡冒泡排序 for(i=0; i<5; i+)for(j=0; j<5-i-1; j+)/ 兩兩交換if(teamj.age > teamj+1.age) tmp = teamj; teamj = teamj+1; teamj+1 = tmp;/ 取值printf("%-12s %-10s

15、 %-5s %-5s %-15sn", " 學(xué)號", "姓名", "年齡", "性別 ", "電話");for(i=0; i<5; i+)printf("%-12s %-10s %-5d %-5c %-15sn", teami.sno, , teami.age, teami.gender, teami.tel);/13. 結(jié)構(gòu)數(shù)組找年齡最大值#include <stdio.h>/結(jié)構(gòu)定義 ,用戶自定義類型 typedef str

16、uct student char sno20;/ 學(xué)號char name20; / 姓名 int age; / 年齡 char gender;/ 性別 char tel20; / 電話;int main()int i;struct student tmp; / 找最大臨時用 / 結(jié)構(gòu)數(shù)組struct student team5;for(i=0; i<5; i+)printf(" 請輸入第 %d 個隊員的信 息 :n", i+1);scanf("%s %s %d %c %s", teami.sno, , &teami.ag

17、e, &teami.gender, teami.tel);/ 取值printf("% -12s %-10s %-5s %-5s %-15sn ", "學(xué)號", "姓名", "年齡", "性別", "電話");for(i=0; i<5; i+)printf("% -12s %-10s %-5d %-5c %- n", teami.sno, , teami.age, teami.gender, teami.tel);/ 找學(xué)號

18、最大的那一個tmp = team0;for(i=1; i<5; i+)if(strcmp(teami.sno,tmp.sno) > 0 )tmp = teami;printf(" 學(xué)號最大的隊員如下 :n");printf("% -12s %-10s %-5d %-5c %- n", tmp.sno, , tmp.age, tmp.gender, tmp.tel);/14. 文件讀寫#include <stdio.h>#include <stdlib.h> /結(jié)構(gòu)定義 ,用戶自定義類型 typedef

19、struct studentchar sno20; / 學(xué)號char name20; / 姓名 int age; / 年齡 char gender;/ 性別 char tel20; / 電話 ;/ 文件讀寫int main()struct student * s, * p1; / 個數(shù)未知FILE * fp;int i, n = 0;char buf1024;/fgets 緩沖區(qū)/ 打開文件fp = fopen("e:test.txt", "r");while(fgets(buf, 1024, fp) != NULL) n+;fclose(fp);/ 指

20、向一個可以存儲 n 個 student 結(jié)構(gòu)的 內(nèi)存空間s = (struct student *)malloc(sizeof(struct student) * n);p1 = s; / 不要動頭位置 s 的值/ 打開文件fp = fopen("e:test.txt", "r");for(i=0; i<n; i+)/ 從文件中讀入一行fscanf(fp, "%s %s %d %c %s", p1->sno, p1->name, &p1->age, &p1->gender, p1->

21、tel);p1+;fclose(fp);p1 = s;for(i=0; i<3; i+)printf("%s %s %d %c %sn", p1->sno, p1->name, p1->age, p1->gender, p1->tel);free(s);/15. 輸入三角形三邊長計算周長和面積#include<stdio.h>#include<math.h>int main()double area,perimeter,s,a,b,c; printf(" 請輸入三邊長 a b c:"); sca

22、nf("%lf%lf%lf",&a,&b,&c); if(a+b>c) && (a+c>b) && (b+c>a) s=(a+b+c)/2; area=sqrt(s*(s-a)*(s-b)*(s-c); perimeter=a+b+c;n",area,perimeter);elseprintf(" 三邊長無法構(gòu)成三角形。n");return 0;/16. 輸入年份和月份輸出對應(yīng)那一月的天數(shù),要處理閏年#includeint main()int year,month;int

23、 leap =0;scanf("%d %d",&year,&month);if(year %4=0 && year %100 !=0) | year %400 =0) /閏年 2 月 29 天leap=1;switch(month)case 1:case 3:case 5:case 7:case 8:case 10:case 12:printf("31");break;case 4:case 6:case 9:case 11:printf("30");break;case 2:printf("%d",28+leap);break; default:printf("error");break;return 0;/17.1 , 2,5 分硬幣問題#include <stdio.h>int main()int sum = 0;for(int i=0;

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論