第一次作業

下北泽的小孤独發表於2024-09-27

task1

實驗1.1程式碼

#include<stdio.h>
int main()
{
    int i=1;
    while(i<3)
    {printf(" o \n");
     printf("<H>\n");
     printf("I I\n");
     i++;
    }
    return 0;
}

圖片結果

實驗1.2

#include<stdio.h>
int main()
{
    printf(" o \t  o \n");
    printf("<H>\t <H>\n");
    printf("I I\t I I\n");
    return 0;
}

圖片結果

task2

實驗2程式碼

#include<stdio.h>
int main()
{
    double a, b,c;
    scanf("%lf%lf%lf",&a,&b,&c);
    if(a+b>c)
    printf("能構成三角形\n");
    else
    printf("不能構成三角形\n");
    return 0;
}

圖片結果

task3

程式碼程式

 1 #include<stdio.h>
 2 int main()
 3 {
 4     char ans1,ans2;
 5      
 6     printf("每次課前認真預習、課後及時複習了沒?(輸入y或Y表示有,輸入n或N表示沒有):");
 7     ans1=getchar();
 8     
 9     getchar();
10     
11     printf("\n動手敲程式碼實踐了沒?(輸入y或Y表示敲了,輸入n或N表示木有敲):");
12     ans2=getchar();
13     if((ans1=='y'||ans1=='Y')&&(ans2=='y'||ans2=='Y'))
14       printf("\n羅馬不是一天建成的,繼續保持哦:)\n");
15     else
16       printf("\n羅馬不是一天毀滅的,我們來建設吧\n");
17        
18     return 0; 
19             
20 }

圖片

實驗3 第九行的作用

如果沒有getchar();編譯執行時輸入一次任意結果就會輸出“羅馬不是一天毀滅的,我們來建設吧”,猜測getchar()作用是讀取第一個字元(ans1)後,需要消耗掉輸入緩衝區中的換行符(當使用者按下Enter鍵時產生的)。否則,這個換行符會被第二個getchar()呼叫讀取,導致第二個問題實際上沒有等待使用者輸入就被跳過了。

task4

程式碼

 1 #include<stdio.h>
 2 
 3 int main()
 4 {
 5     double x,y;
 6     char c1,c2,c3;
 7     int a1,a2,a3;
 8     
 9     scanf("%d、%d、%d",&a1,&a2,&a3); /* %d間用、,輸入時也用、*/ 
10     printf("a1=%d,a2=%d,a3=%d\n",a1,a2,a3);
11     
12     scanf("%c%c%c",&c1,&c2,&c3);
13     printf("c1=%c,c2=%c,c3=%c\n",c1,c2,c3);
14     
15     scanf("%lf,%lf",&x,&y); /*輸入double對應%lf*/ 
16     printf("x=%f,y=%lf\n",x,y);
17     
18     return 0;
19 }

圖片

task5

程式碼

#include<stdio.h>
int main()
{
    int year;
    double second;
    scanf("%lf",&second);
    year=second/(60*60*24*365);
    printf("10億秒約等於%d年",year);
    return 0;
}

圖片

task6

程式程式碼

#include<stdio.h>
#include<math.h>

int main()
{
    double x,ans;
    
    while(scanf("%lf",&x) !=EOF)
    {
    ans=pow(x,365);
    printf("%.2f的365次方:%.2f",x,ans);
    printf("\n");
    }
    
    return 0;    
}

圖片

task7

程式程式碼

#include<stdio.h>
int main()
{
    double F,C;
    while(scanf("%lf",&C) !=EOF)
    {
    F=9*C/5.0+32;
    printf("攝氏度c=%.2f時,華氏度f=%.2f",C,F);
    }
    return 0;
}

圖片

task8

程式碼

#include<stdio.h>
#include<math.h>
int main()
{
    int a,b,c;
    double s,area;
    
    while(scanf("%d%d%d",&a,&b,&c) !=EOF)
    {
    s=(a+b+c)/2;
    area=sqrt(s*(s-a)*(s-b)*(s-c));
    printf("a=%d,b=%d,c=%d,area=%.3f",a,b,c,area);
    }
    
    return 0;
      
}

圖片

相關文章