1. 程式人生 > >數據類型、運算符、表達式———第一次上機實驗

數據類型、運算符、表達式———第一次上機實驗

順序 scan 昨天 ken wid clu 操作 urn 希望

Part1: 驗證性內容

/*學號*/ 
#include<stdio.h>
int main(){
    printf("201883300089\n");
    printf("yahooooooooooooooooooooooooooo\n") ;
    return 0;
} 

Hello world改寫

/*求兩個整數的乘積*/
#include <stdio.h>
int product(int,int);   /*函數product()*/
int main(void) {
    int x,y,s;
    scanf(
"%d %d",&x,&y); s = product(x,y); printf("The mul is: %d",s); return 0; } /*函數product()定義*/ int product(int a, int b) { int mul; mul = a*b; return mul; }

定義新的函數,並進行引用做乘法運算。

/*整數相除*/ 
#include<stdio.h>
int main(){
    int a=5,b=7,c=100,d,e,f;
    d
=a/b*c; //a/b=0 e=a*c/b; //a*c=500,500/7=71 f=c/b*a; //c/b=14,14*5=70 printf("d=%d,e=%d,f=%d\n",d,e,f); return 0; }

整數相除時,註意數據類型和運算順序及優先級

/*自加自減*/ 
#include<stdio.h>
int main(){
    int a=5,b=8;
    printf("a++=%d\n",a++);/*後置運算,先參與其他運算,在對變量進行改變 */ 
    printf("a=%d\n",a);
    printf(
"++b=%d\n",++b);/*前置運算,先改變變量,在進行運算*/ printf("b=%d\n",b); return 0; }

/*關系運算與邏輯運算*/ 
#include<stdio.h>
int main(){
    int a=5,b=8,c=8;
    printf("%d,%d,%d,%d\n",a==b&&a==c,a!=b&&a!=c,a>=b&&a>=c,a<=b&&a<=c);//關系運算符  >  <  >=  <=  ==  !=
    printf("%d,%d\n",a<=b||a>=c,a==b||b==c);                              //邏輯運算符  &&  ||   ! 
    printf("%d,%d,%d,%d\n",!(a==b),!(a>=b),!(a>=c),!(a<=b));
    return 0;     
} 

Part2:

ex1

// 程序功能:
// 要求用戶從鍵盤輸入一個整數,判斷其是奇數還是偶數 
   
  #include <stdio.h> 
  int main() {
      int x;
      
      printf("輸入一個整數: \n");
      scanf("%d",&x);
      
      // 在×××處填寫相應表達式
      // 使得當表達式成立時,判定x是奇數,否則是偶數  
      if(x%2==1)  
          printf("是奇數");
      else
          printf("是偶數"); 
      
      return 0;
  } 

技術分享圖片技術分享圖片

ex2

/* 工作日 休息日 */ 
 
 #include <stdio.h> 
  int main() {
      int days;
      printf("輸入一個整數: \n");
      scanf("%d",&days);
      if(days>=1&&days<=5) // days在1到5之間
          printf("workdays, fighting\n");
      else if(days==6||7) // days是6或7
          printf("weekend, relax~\n");
      else
          printf("Ooops, not in 1~7\n");
      
      return 0;
  } 

技術分享圖片

技術分享圖片

技術分享圖片

ex3

/*大小寫轉換*/ 

  #include <stdio.h>
  int main() {
      char ch;
      printf("輸入一個字符:\n");
      scanf("%c",&ch);
    if(ch>=a&&ch<=a+32)   // 判定ch是小寫字母的表達式
          ch=ch-32 ; // 字母轉換成大寫字母的表達式語句
    printf("%c\n",ch);
      
      return 0;
  }

技術分享圖片

實驗總結與體會

c語言學習了一段時間,也會寫了一些短小的語句,但對於稍微復雜的問題卻暫時還是不能解決。比如老師提出的對一個十進制的數求二進制表示,算法雖然已經想好了,但還暫時不能實現(輸出結果始終是0,迫切的希望輸入1可以輸出一個1,完成我小語句的圖靈測試)。畢竟首次接觸(我之前的暑假寒假都在幹什麽),使用c語言也出現了許許多多意料中和意料外的事情。譬如忘掉分號,忘掉逗號,忘掉括號,甚至忘掉主函數和返回值,試圖用核心的的幾條語句無中生有。或是用沒什麽邏輯的語句誘騙計算機輸出我根本不知道經過怎麽計算得出的數字。或是修改之後沒有重新編譯一直點擊運行,試圖在我的遞歸操作中使其編譯運行。至於意料之外的,也有一些,最頭大的應該就是昨天半夜排好了博客卻沒有保存到草稿箱吧(可能上邊這個自動保存是關機之後不起作用了吧)。其次應該是我這堪憂的打字速度,看著鍵盤找字母戳真的沒什麽速度可說。最後便是一些截屏、怎麽打引號、分不清正斜杠反斜杠和怎麽切換中英輸入之類的瑣碎事情了。感謝程序員的不懈努力,讓我在一無所知的狀況下都能玩的了電腦,打的了遊戲。總之,雖然只是解決了簡單的問題,但我還是相信我可以在c中找到樂趣的。 技術分享圖片


技術分享圖片

嗯 會找到的 2019-03-21

數據類型、運算符、表達式———第一次上機實驗