实验1 C语言开发环境使用和数据类型、运算符、表达式
??實驗結論
PART 1?驗證性內容
問題:
1.結尾沒有加“;”時回車到下一行的時候再輸入下一行的語言首字對齊方式會發生變化,可以對上一行進行檢查。
(這一點需要在不同軟件里面試一下,在機房里的軟件做出來是有這種變化的,但自己用Xcode就沒有,而是直接會彈出語句錯誤提示,所以這一條可能不是全都適用)
2.把一些字符混淆,可能語法沒有錯誤程序可以跑起來,但進行輸出實驗之后就會發現錯誤,所以每次寫完之后多運行測試一下找找看有沒有什么問題。
(這個是我當時敲錯的內容,調試結果未提示錯誤,運行出來就很奇怪)
? ? ? ? printf ("d=%d,e=&d,f=%d\n",d,e,f); ? ??→ ?輸出結果e=&d
?
?
這一部分就是按照課本的例題把程序敲到電腦上,但是這個照貓畫虎也畫的是四不像,需要多多練習熟悉。
丟“;”各種,藏在數字上面奇奇怪怪的符號找起來很困難,最要命的是全角半角真的讓人很頭大ˉ\_(ツ)_/ˉ
?
?
PART 2?按要求寫出符合要求的表達式 補全程序
(1)判斷奇偶↓
1 // 程序功能: 2 // 要求用戶從鍵盤輸入一個整數,判斷其是奇數還是偶數 3 #include <stdio.h> 4 int main(){ 5 int x; 6 printf("輸入一個整數: \n"); 7 scanf("%d",&x); 8 if (x%2==1) 9 printf("是奇數"); 10 else 11 printf("是偶數"); 12 return 0; 13 }?運行結果↓
?這里就是一個“if ……else……”語句(參考網頁:http://c.biancheng.net/c/if_else/0)
1o?if 語句是一種分支結構,當條件滿足時,有“執行該操作語句”和“跳過執行該操作語句”的兩條分支。
2o?執行流程就是先判斷關鍵詞 if 后括號內的值,如果該值為邏輯真(非 0),則執行 if 后面的語句,接著執行 if 體后的其他語句;
否則,不執行該 if 體,直接執行 if 體后的其他語句。
3°當 if 體中的語句多于一條時,要用{ }把這些語句括起來形成一條復合語句‘(因為if 只能控制其后的一個語句)
? ?只有一條語句可省略{ },
?
在補充括號里面的條件表達式的時候強烈感覺到熟悉運算符超級重要,我自己很不熟悉字符要研究半天這里要用哪一個
完了定下來是這個運算符就看一眼課本看一眼鍵盤看一眼屏幕把它硬生生放進去,過程很麻煩,要多都練習熟悉。
(第二章感覺每一頁都是超級基礎超級重要的內容,一定要加油學習? ????)
?
(2)根據不同的輸入,顯示不同提示信息↓
/* 程序功能:要求用戶從鍵盤輸入1~7之間的整數如果輸入的是1~5, 提示用戶是工作日,要努力工作;如果輸入的是6或7,提示用戶是休息日,放松休息;否則,提示用戶輸入不在合法范圍*/ #include <stdio.h> int main() {int days;printf("輸入一個整數: \n");scanf("%d",&days);// 補足×××處的表達式,使得滿足程序功能描述if(days <= 5 && days >= 1) // days在1到5之間 printf("workdays, fighting\n");else{if( days == 6||days == 7)// days是6或7printf("weekend, relax~\n");elseprintf("Ooops, not in 1~7\n");}return 0; }運行結果↓
?
這里是“if……else……”嵌套了一個“if……else……”語句(參考網頁:http://c.biancheng.net/view/163.html)
1o?if…else if…else 的意思就是:“如果”第一個成立,就執行第一個;“否則如果”第二個成立就執行第二個;“否則”就執行第三個。
?
個人感覺這個網頁講的也都是“if……else……”,兩個的嵌套我就照著他的框架看了一下程序,里面都是很基礎很基礎的內容
這兩個都是在一個大網站“C語言中文網”看起來很厲害東西很多,具體還沒有看很多,待測(′・ω・`)
?
(3)根據用戶輸入字符,判斷如果是小寫字母,則轉換成大寫;否則保持原樣↓
// 功能: // 從鍵盤上輸入單個字符 // 如果是小寫字母,則轉換成大寫后輸出 // 否則,什么也不做,原樣輸出 #include <stdio.h> int main() {char ch;printf("輸入一個字符:\n");scanf("%c",&ch);// 根據程序功能描述,補足程序if(ch>='a' && ch<='z') // 如果ch是小寫字母,補足判定ch是小寫字母的表達式ch = ch - 32; //補足把ch中的小字母轉換成大寫字母的表達式語句// 說明:語句就是在表達式末尾加分號;printf("%c\n",ch);return 0; }運行結果↓
?
?這個就是利用字符的ASCII碼的關系進行的運算,其他沒有什么補充。
?
PART 3 編程練習
編寫程序,實現把一個十進制整數轉換成二進制。十進制整數由鍵盤輸入,轉換后的二進制數據輸出到顯示器上。↓
// 功能: //編寫程序,實現把一個十進制整數轉換成二進制。十進制整數由鍵盤輸入,轉換后的二進制數據輸出到顯示器上。 #include <stdio.h> int main() {int n, b,i = 1;int a = 0 ;printf( "輸入一個十進制數:\n" );scanf("%d",&n);while(n!=0){b=n%2;n/=2;a+=b*i;i*=10;}printf("%d",a);return 0 ;}?運行結果↓
所以不難看出在運行小一點數字的時候這個程序是ok的,但數字超過1024就不可以了
(剛寫出來很激動就123456隨便按結果出來奇奇怪怪的數字,就開始一直試這個的最大值hahaha)
?
?然后把整型改成了長整型就是下面這一個??↓
// 功能: //編寫程序,實現把一個十進制整數轉換成二進制。十進制整數由鍵盤輸入,轉換后的二進制數據輸出到顯示器上。 #include <stdio.h> int main() {long n, b,i = 1;long a = 0 ;printf( "輸入一個十進制數:\n" );scanf("%ld",&n);while(n!=0){b=n%2;n/=2;a+=b*i;i*=10;}printf("%ld",a);return 0 ;}?運行結果↓
?
?比上一個程序可以轉換的數字大了,但還是受限制的,要想要不受限制需要用數組寫,但具體內容我還不是很清楚,待學習。
?
??實驗總結與體會
這次的實驗報告我是按照任務part123寫的,在每個part里就把寫這個程序的總結感受什么的就隨在下面,以后會嘗試其他格式,改進一下。
以下是我對c語言這門課程的感受:
我是首次接觸C語言,所以給我的第一感覺就是真的很陌生(不知道怎么學,學過的最有關聯的就只有程序框圖了),自己本來就是一個電腦白癡什么都不是很了解,就僅局限于在電腦上聊天看視頻,最多就是有時候
做一做word文檔、PPT和Excel表格什么的,沒有太大技術含量的操作,所以對我而言我在電腦上做的事情手機都可以替代。在第一次上課的時候我看著打出來的結構“int”“printf”什么什么就滿腦子都是它為什么長這樣,
有點像小孩子認字。由于各種原因費了好大勁兒才裝好編程軟件,然后滿心歡喜特別激動,新鮮勁兒上來了就想著照著課本敲個小代碼試一試,自以為在手機上打字特別快打代碼也可以很流暢,可結果看著這個一個個藏
在數字上面的奇妙字符我真的感覺好難找,還有不經意間掉的“;”和空格各種零零碎碎的小問題,心勁兒就變成了煩躁,好希望有一款有單獨字符鍵的鍵盤。本來看了程序一個腦袋四五六個大,想著它為什么要這樣編寫
就是并不是很理解它的含義,以后要好好下功夫了。
(這次的實驗報告我是按照任務part123寫的,在每個part里就把寫這個程序的總結感受什么的就隨在下面,以后會更改一下格式。)
?
?
?
?
?
?
?
轉載于:https://www.cnblogs.com/Anna0708/p/10574553.html
《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀總結
以上是生活随笔為你收集整理的实验1 C语言开发环境使用和数据类型、运算符、表达式的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java核心(十五):List、Set、
- 下一篇: 北海a货翡翠,牡丹江a货翡翠