實現編寫一個程序,它從標準輸入讀取C源代碼,並驗證所有的花括號都正確的成對出現。


//從標準輸入讀取C源代碼,並驗證所有的花括號都正確的成對出現
#include <stdio.h>
int main()
{
    int ch;
    int count = 0;
    while ((ch = getchar()) != EOF)//循環輸入,EOF結束
    {
        if (ch == '{')
        {
            count++;
        }
        //當遇到{時,計數器+1
        if (ch == '}' && count == 0)
        {
            printf("不匹配\n");
            return 0;
        }
        //當遇到}但計數器爲0了,輸出不匹配,即爲}在{前邊
        if (ch == '}' && count != 0)
        {
            count--;
        }
        //當遇到}且計數器不爲0時,計數器-1
    }

    if (count == 0)
    {
        printf("匹配!\n");
    }
    else
    {
        printf("不匹配!\n");
    }

    system("pause");
    return 0;
}

//Sn=a+aa+aaa+aaaa+aaaaa
#include <stdio.h>
int main()
{
    int i = 0;
    int n = 0;
    printf("請輸入一個整數:");
    scanf("%d",&n);
    int num = n;
    int sum = n;
    int flag = num;
    for (i = 1; i < 5; i++)
    {

        num = num * 10 + flag;
        sum = num + sum;
    }
    printf("%d\n",sum);
    system("pause");
    return 0;
}

//水仙花數
#include <stdio.h>
int main()
{
    int i = 0;
    int a, b, c;
    for (i = 100; i < 1000; i++)
    {
        a = i/100;
        b = i/10-a*10;
        c = i-a*100-b*10;
        if (i == c*c*c + b*b*b + a*a*a)
            printf("%d是水仙花數\n", i);

    }
    system("pause");
    return 0;
}

////輸出星星陣
#include <stdio.h>
int main()
{
    int i = 0;
    int j = 0;
    int line;
    int star;
    for (i = 1; i <= 13; i++)
    {
        line = i;
        if (i > 7)
            line = 14 - line;
        for (j = 7; j > line; j--)
        {
            printf(" ");
        }
        for (star = 2 * line - 1; star > 0; star--)
        {
            printf("*");
        }
        printf("\n");
    }
    system("pause");
    return 0;
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章