简单的例子.
- 格式:doc
- 大小:139.50 KB
- 文档页数:17
2.1 簡單的例子 1. 試寫一個程式,可列印出如下的輸出結果: See you tomorrow. Have a good night.
/* hw2_1.c */ #include #include int main(void) { int i=5; printf("%d+%d=%d\n",i,i,i+i); system("pause"); return 0; }
2.2解析C語言 9. 在編譯下面的程式碼時,編譯器會給您什麼樣的錯誤訊息?請試著了解此一錯誤訊息,並修正錯誤之處。 01 /* hw2_9.c, 有錯誤的程式碼 */ 02 #include 03 #include 04 int main(void) 05 { 06 i=5; 07 printf("i=%d",i); 08 system("pause"); 09 return 0; 10 }
2.2 識別字及關鍵字 12.下面哪些是有效的識別字? _artist #japan ChinaTimes Y2k 2cats pentium3 22456 TOMBO A1234 __two jdk1_3 2_cugii a pencil println news# NO1 AAA ___AMD
2.3 除錯 2-2 C語言教學手冊 第四版 18.試找出下列程式錯誤之處,並嘗試修正之: 01 /* hw2_18, 請找出此程式何處有誤 */ 02 #include 03 #include 04 int main(void) 05 { 06 int num=2 07 printf(num=%d,num); 08 system(pause); 09 return 0; 10 }
3.2基本資料型態 3.下列何者是錯誤的常數?試指出其錯誤之所在。 甲、134.45L 乙、10km24 丙、a2048 丁、1.3453F 3.4資料型態的轉換 19.請參閱下面的程式碼,然後回答接續的問題: 01 /* hw3_19, 型態轉換的練習 */ 02 #include 03 #include 04 int main(void) 05 { 06 int num1=5,num2=8; 07 printf("%d\n",num1/num2); 08 09 system("pause"); 10 return 0; 11 }
a. 試解釋第7行的輸出結果為何是0? 試修改程式碼,利用型態轉換的方式,使得第7行的輸出結果為0.625000。 /* hw3_19b.c */ #include C語言基本概述 2-3 #include int main(void) { int num1=5,num2=8; printf("%f\n",(float)num1/num2); system("pause"); return 0; } 2-4 C語言教學手冊 第四版 4.1 4.1函數printf() 2.試撰寫一程式,利用printf() 函數列印出如下的字串(必須包含雙引號): "I love C language best." /* hw4_2.c */ #include #include int main(void) { printf("\"I love C language best.\"\n"); system("pause"); return 0; } 5.試撰寫一程式,利用printf() 函數列印出如下的字串(必須包含單引號): '30% 的學生來自中部地區,42% 的學生來自南部地區。' /* hw4_5.c */ #include #include int main(void) {
printf("\'30%%的學生來自中部地區,42%%的學生來自南部地區\'\n "); system("pause"); return 0; }
4.2輸入函數scanf() 9.下面的程式碼是想設計從鍵盤讀入一個整數,並設定給變數num存放。此程式於執行時會發生錯誤,試指出錯誤之所在,並試著修正之,使得程式可以正確的執行。
01 /* hw4_9, 使用scanf()函數的錯誤 */ 02 #include 03 #include 04 int main(void) C語言基本概述 2-5 05 { 06 int num; 07 scanf("%d",num); 08 printf("num=%d\n",num); 09 10 system("pause"); 11 return 0; 12 }
/* hw4_9a.c, 修正hw4_9--使用scanf()函數的錯誤 */ #include #include int main(void) { int num; scanf("%d",&num); // & address printf("num=%d\n",num); system("pause"); return 0; }
10.試撰寫一程式,利用scanf() 函數輸入兩個整數,然後以printf() 函數列印出這兩個整數的乘積。 /* hw4_10.c */ #include #include int main(void) { int a, b; printf("請輸入兩個整數: "); scanf("%d %d", &a, &b); printf("%d*%d=%d\n", a, b, a*b); system("pause"); return 0; } 2-6 C語言教學手冊 第四版 5.3 運算式 11.試撰寫一程式,可由鍵盤輸入攝氏溫度,程式的輸出為華氏溫度,其轉換公式如下:華氏溫度=(9/5)*攝氏溫度+32 /* hw5_11.c */ #include #include int main(void) { double f, c; printf("請輸入攝氏溫度:"); scanf("%lf", &c); f=(9/5.0)*c+32; printf("攝氏%.2f度=華氏%.2f度\n", c, f); system("pause"); return 0; } #12 /* hw5_12.c */ #include #include int main(void) { double f,c;
printf("請輸入華氏溫度:"); scanf("%lf",&f);
c=(f-32)*5/9;
printf("華氏%.2f度=攝氏%.2f度\n",f,c);
system("pause"); return 0; } C語言基本概述 2-7 #13 * hw5_13.c */ #include #include int main(void) { double mile,km;
printf("請輸入英哩數:"); scanf("%lf",&mile);
km=1.6*mile;
printf("%.2f英哩=%.2f公里\n",mile,km);
system("pause"); return 0; } 2-8 C語言教學手冊 第四版 6.2另外的選擇—if-else 敘述 9. 試撰寫一程式,讀入10個學生的成績,成績在0~59分為C,60~75分為B,76~100分為A,最後將得到A、B、C的人數印出。 /* hw6_9.c */ #include #include int main(void) { int score, i; int counta=0,countb=0,countc=0; for(i=1;i<=10;i++) { printf("請輸入成績:"); scanf("%d", &score); if(score>=76 && score<=100) //&& ->and counta++; else if(score>=60 && score<=75) countb++; else if(score>=0 && score<=59) countc++; } printf("\n得到A的有%d人\n", counta); printf("得到B的有%d人\n", countb); printf("得到C的有%d人\n", countc); system("pause"); return 0; } #12