实现编写一个程序,它从标准输入读取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;
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章