精华内容
下载资源
问答
  • 2021-05-22 18:12:07

    请编写程序检查C语言源程序中下列符号是否配对:/*与*/、(与)、[与]、{与}。

    输入格式:

    输入为一个C语言源程序。当读到某一行中只有一个句点.和一个回车的时候,标志着输入结束。程序中需要检查配对的符号不超过100个。

    输出格式:

    首先,如果所有符号配对正确,则在第一行中输出YES,否则输出NO。然后在第二行中指出第一个不配对的符号:如果缺少左符号,则输出?-右符号;如果缺少右符号,则输出左符号-?。

    输入样例1:

    void test()

    {

    int i, A[10];

    for (i=0; i<10; i++) /*/

    A[i] = i;

    }

    .

    输出样例1:

    NO

    /*-?

    输入样例2:

    void test()

    {

    int i, A[10];

    for (i=0; i<10; i++) /**/

    A[i] = i;

    }]

    .

    输出样例2:

    NO

    ?-]

    输入样例3:

    void test()

    {

    int i

    double A[10];

    for (i=0; i<10; i++) /**/

    A[i] = 0.1*i;

    }

    .

    输出样例3:

    YES

    题意

    如上

    题解

    这里用栈存符号,遇到右括号判断栈顶元素是否为对应的左括号,详细看代码

    这里给几个特殊样例

    1./*

    2./**/*/

    代码

    #include

    using namespace std;

    stack sc;

    int flag=;

    int check(char ch)

    {

    if(!sc.empty())

    {

    char uh=sc.top();

    if(uh=='('&&ch==')')sc.pop();

    else if(uh=='['&&ch==']')sc.pop();

    else if(uh=='{'&&ch=='}')sc.pop();

    else if(uh=='*'&&ch=='*')sc.pop();

    else

    {

    printf("NO\n");

    if(uh=='(')printf("(");

    if(uh=='[')printf("[");

    if(uh=='{')printf("{");

    if(uh=='*')printf("/*");

    printf("-?\n");//少右

    flag=;

    }

    }

    else

    {

    printf("NO\n");

    printf("?-");//少左

    if(ch==')')printf(")");

    if(ch==']')printf("]");

    if(ch=='}')printf("}");

    if(ch=='*')printf("*/");

    flag=;

    }

    }

    int main()

    {

    char a[];

    for(;;)

    {

    gets(a+);

    if(a[]=='.')break;

    if(flag==)continue;

    for(int i=;a[i];i++)

    {

    char ch=a[i],nh=a[i+];//ch当前,nh下一个

    if(ch=='('||ch=='['||ch=='{')//左

    sc.push(ch);

    else if(ch=='/'&&nh=='*')//这里特判下/*的情况

    sc.push('*'),i++;

    else if(ch==')'||ch==']'||ch=='}'||ch=='*'&&nh=='/')//右

    {

    if(ch=='*'&&nh=='/')i++;//这里特判下*/的情况

    check(ch);

    }

    if(flag==)break;//如果不行直接跳出

    }

    }

    if(!sc.empty()&&flag)check(' ');//判断只有1个符号的情况

    if(flag)printf("YES\n");

    return ;

    }

    更多相关内容
  • 首先,如果所有符号配对正确,则在第一行中输出YES,否则输出NO。然后在第二行中指出第一个不配对的符号:如果缺少左符号,则输出?-右符号;如果缺少右符号,则输出左符号-?。 输入样例1: void test() { int i, A...

    题目

    请编写程序检查C语言源程序中下列符号是否配对://、(与)、[与]、{与}。

    输入格式:
    输入为一个C语言源程序。当读到某一行中只有一个句点.和一个回车的时候,标志着输入结束。程序中需要检查配对的符号不超过100个。

    输出格式:
    首先,如果所有符号配对正确,则在第一行中输出YES,否则输出NO。然后在第二行中指出第一个不配对的符号:如果缺少左符号,则输出?-右符号;如果缺少右符号,则输出左符号-?。

    输入样例1:

    void test()
    {
    int i, A[10];
    for (i=0; i<10; i++) { /*/
    A[i] = i;
    }
    .

    输出样例1:

    NO
    /*-?

    输入样例2:

    void test()
    {
    int i, A[10];
    for (i=0; i<10; i++) /**/
    A[i] = i;
    }]
    .

    输出样例2:

    NO
    ?-]

    输入样例3:

    void test()
    {
    int i
    double A[10];
    for (i=0; i<10; i++) /**/
    A[i] = 0.1*i;
    }
    .

    输出样例3:

    YES

    鸣谢用户 王渊博 补充数据!

    思路

    /*
    符号配对,很典型的堆栈题,利用堆栈的特性先进后出和代码中符号配对的性质是相同的,
    注意点:
    1.在于/* 和*/需要把它们当作一个整体字符,所以可以用<和>来分别代替,
    2.在于样例1中,对于/*/的判断,要多一次i++,相当于从第一个’/'直接跳到了第二个’/‘
    3.最后的输出,在flag=1时,注意栈是否为空的情况,如果栈不为空,就输出top的元素,右符号缺失;如果栈为空,就输出之前的t,左符号缺失;
    */

    代码

    #include <stdio.h>
    #include <stdlib.h>
    #define Maxsize 105
    
    typedef struct StackRecord *Stack;
    struct StackRecord  {
        int Top;
        char *Array;
    };
    
    Stack creat(){
        Stack s = (Stack) malloc(sizeof(struct StackRecord));
        s->Array = (char *) malloc(Maxsize * sizeof(char));
        s->Top = -1;
        return s;
    }
    
    int is_empty(Stack s){
        if(s->Top == -1) return 1;
        else return 0;
    }
    void push(Stack s, char x){
        s->Array[++(s->Top)] = x;
    }
    void pop(Stack s){
        s->Top--;
    
    }
    char top(Stack s){
        return s->Array[s->Top];
    }
    char a[100];
    char str[200];
    int main(){
        int k = 0;
        char t;
        while(gets(str)){
    
            if(str[0]=='.'&&!str[1]) break;
            for(int i=0; str[i]; i++){
                if(str[i]=='('||str[i]=='['||str[i]=='{'||str[i]==')'||str[i]=='}' ||str[i]==']')
                    a[k++]=str[i];
                else if(str[i]=='/'&&str[i+1]=='*'){
                    a[k++]='<';
                    i++;
                }else if(str[i]=='*'&&str[i+1]=='/'){
                    a[k++]='>';
                    i++;
                }
            }
        }
        int flag=0;
        Stack s = creat();
        for(int i=0; i<k; i++){
            if(a[i]=='(' || a[i]=='[' || a[i]=='{' || a[i]=='<') {
                push(s, a[i]);
            } else if(a[i] == ')'){
                if(s->Top!=-1 && top(s)=='(') pop(s);
                else{
                    t = a[i];
                    flag = 1;
                    break;
                }
    
            } else if(a[i] == ']'){
                if(s->Top != -1 && top(s)=='[') pop(s);
                else{
                    t = a[i];
                    flag = 1;
                    break;
                }
    
            } else if(a[i] == '}'){
                if(s->Top != -1 && top(s)== '{') pop(s);
                else{
                    t = a[i];
                    flag = 1;
                    break;
                }
            } else if(a[i] == '>'){
                if(s->Top != -1 && top(s)== '<') pop(s);
                else{
                    t = a[i];
                    flag = 1;
                    break;
                }
            }
        }
        if(!flag && is_empty(s)) printf("YES\n");
        else{
            printf("NO\n");
            if(!is_empty(s)){
                if(top(s)=='<') printf("/*-?\n");
                else printf("%c-?\n", top(s));
            }else{
                if(t=='>') printf("?->\n");
                else printf("?-%c\n", t);
            }
        }
        return 0;
    }
    
    展开全文
  • 7-17 符号配对 (20分)(附所有测试点提示)7-17 符号配对 (20分)(附所有测试点提示)//栈的基本结构实现(部分)#include #include #include #include #include #include #pragma warning(disable:4996)using namespace ...

    7-17 符号配对 (20分)(附所有测试点提示)

    7-17 符号配对 (20分)(附所有测试点提示)

    c9221d58d29ac394980ddcc946475e98.png

    //栈的基本结构实现(部分)

    #include

    #include

    #include

    #include

    #include

    #include

    #pragma warning(disable:4996)

    using namespace std;

    //函数状态码定义

    #define TRUE 1

    #define FALSE 0

    #define OK 1

    #define ERROR 0

    #define INFEASIBLE -1

    #define OVERFLOW -2

    typedef int Status;

    #define STACK_INIT_SIZE 100

    #define STACKINCREMENT 10

    typedef char SElemtype;

    typedef struct Sqstack {

    SElemtype* base;

    SElemtype* top;

    int stacksize;

    }Sqstack;

    //栈的初始化

    Status InitStack_Sq(Sqstack& S)

    {

    S.base = (SElemtype*)malloc(sizeof(SElemtype) * STACK_INIT_SIZE);

    if (!S.base) exit(OVERFLOW);

    S.top = S.base;

    S.stacksize = STACK_INIT_SIZE;

    return OK;

    }

    //求栈长

    int Stack_Length(Sqstack S)

    {

    return S.top - S.base;

    }

    //判栈空

    bool Stack_Empty(Sqstack S) //判栈空

    {

    return S.top == S.base;

    }

    //清空栈

    Status Stack_Clear(Sqstack& S)

    {

    S.top = S.base;

    return OK;

    }

    //压栈

    Status Push(Sqstack& S, SElemtype e)

    {

    if ((S.top - S.top) == S.stacksize)

    {

    S.base = (SElemtype*)realloc(S.base, sizeof(SElemtype) * (S.stacksize + STACKINCREMENT));

    if (!S.base)exit(OVERFLOW);

    S.top = (S.base + S.stacksize);

    S.stacksize += STACKINCREMENT;

    }

    *S.top++ = e;

    return OK;

    }

    //出栈

    Status Pop(Sqstack& S, SElemtype& e)

    {

    if (S.base == S.top) return ERROR;

    e = *(--S.top);

    return OK;

    }

    //遍历栈

    Status StackTraverse(Sqstack S, Status(*vist)(SElemtype))

    {

    SElemtype* p = S.base;

    while (p < S.top)

    {

    if (vist(*p) == ERROR) return ERROR;

    ++p;

    }

    return OK;

    }

    //输出栈元素

    Status visit(SElemtype e)

    {

    cout << e << " ";

    return OK;

    }

    int main()

    {

    ios::sync_with_stdio(false);

    int ok = 1, len;

    Sqstack S;

    string brackets_in_code, str, wrong_information;

    InitStack_Sq(S);

    str.clear();

    brackets_in_code.clear();

    wrong_information.clear();

    //读取括号,存入brackets_in_code

    while (getline(cin, str))

    {

    len = str.length();

    //if (len == 0 || (len == 1 && str[0] == '.')) break;

    //测试点4 : 没有代码,只有一个 "."

    if (str == ".") break;

    for (int i = 0; i < len; i++)

    {

    if (str[i] == '(' || str[i] == ')' || str[i] == '[' || str[i] == ']' || str[i] == '{' || str[i] == '}')

    brackets_in_code += str[i];

    else if (str[i] == '/' && str[i + 1] == '*')

    {

    brackets_in_code += '

    i++;

    }

    else if (str[i] == '*' && str[i + 1] == '/')

    {

    brackets_in_code += '>';

    i++;

    }

    }

    }

    //cout << "#" << brackets_in_code << "#"<< endl;

    len = brackets_in_code.length();

    for (int i = 0; i < len; i++)

    {

    char ch1 = brackets_in_code[i], ch2;

    if (ch1 == '(' || ch1 == '[' || ch1 == '{' || ch1 == '

    {

    Push(S, ch1);

    continue;

    }

    else

    {

    if (Stack_Empty(S))

    {

    ok = 0;

    if (ch1 == '>')

    wrong_information = "?-*/";

    else

    {

    wrong_information = "?-";

    wrong_information += ch1;

    }

    break;

    }

    Pop(S, ch2);

    if ((ch2 == '(' && ch1 != ')') || (ch2 == '[' && ch1 != ']') || (ch2 == '{' && ch1 != '}') || (ch2 == ''))

    {

    ok = 0;

    if (ch2 == '

    wrong_information = "/*-?";

    else

    {

    wrong_information = ch2;

    wrong_information += "-?";

    }

    break;

    }

    }

    }

    //cout << "#" << Stack_Length(S) << "#" << endl;

    if (ok == 1 && Stack_Empty(S)) cout << "YES" << endl;

    else if (ok == 1 && !Stack_Empty(S))

    {

    cout << "NO" << endl;

    cout << *S.base << "-?" << endl;

    }

    else

    {

    cout << "NO" << endl;

    cout << wrong_information << endl;

    }

    }

    /*

    string str, wrong_information;

    char ch;

    int len;

    int ok = 1;

    while (getline(cin, str))

    {

    if (ok == 0) break;

    len = str.length();

    //当读到某一行中只有一个句点.和一个回车的时候,标志着输入结束

    if (len == 0 || (len == 1 && str[0] == '.')) break;

    //访问每一个 括号类符号

    for (int i = 0; i < len; i++)

    {

    //左括号

    if (str[i] == '(' || str[i] == '[' || str[i] == '{')

    {

    ch = str[i];

    Push(S, ch);

    }

    if (str[i] == '/' && str[i+1] == '*')

    {

    ch = str[i];

    Push(S, ch);

    i++;

    continue;

    }

    //右括号

    if (str[i] == ')' || str[i] == ']' || str[i] == '}')

    {

    if (Stack_Empty(S))

    {

    ok = 0;

    wrong_information += "?-";

    wrong_information += str[i];

    break;

    }

    else

    {

    Pop(S, ch);

    if ((str[i] == ')' && ch != '(') || (str[i] == ']' && ch != '[') || (str[i] == '}' && ch != '{'))

    {

    wrong_information = ch;

    if (ch == '/') wrong_information += '*';

    wrong_information += "-?";

    }

    }

    }

    else if (str[i] == '*' && str[i + 1] == '/')

    {

    if (Stack_Empty(S))

    {

    ok = 0;

    wrong_information += "?-";

    wrong_information += str[i] + str[i + 1];

    break;

    }

    else

    {

    Pop(S, ch);

    if (ch != '/')

    {

    wrong_information = ch;

    wrong_information += "-?";

    }

    }

    }

    }

    //cout << "#";

    //StackTraverse(S, visit);

    //cout << '#' << endl;

    }

    if (ok == 1 && Stack_Empty(S)) cout << "YES" << endl;

    else

    {

    cout << "NO" << endl;

    cout << wrong_information << endl;

    }

    */

    7-17 符号配对 (20分)(附所有测试点提示)相关教程

    展开全文
  • C语言 符号配对 (20分)

    千次阅读 2020-03-05 17:06:13
    符号配对(20分) 请编写程序检查C语言源程序中下列符号是否配对:/*与*/、(与)、[与]、{与}。 输入格式: 输入为一个C语言源程序。当读到某一行中只有一个句点.和一个回车的时候,标志着输入结束。程序中需要检查...

    符号配对 (20分)

    请编写程序检查C语言源程序中下列符号是否配对:/**/()[]{}

    输入格式:

    输入为一个C语言源程序。当读到某一行中只有一个句点.和一个回车的时候,标志着输入结束。程序中需要检查配对的符号不超过100个。

    输出格式:

    首先,如果所有符号配对正确,则在第一行中输出YES,否则输出NO。然后在第二行中指出第一个不配对的符号:如果缺少左符号,则输出?-右符号;如果缺少右符号,则输出左符号-?

    输入样例1:

    void test()
    {
        int i, A[10];
        for (i=0; i<10; i++) /*/
            A[i] = i;
    }
    .
    
    

    输出样例1:

    NO
    /*-?
    

    输入样例2:

    void test()
    {
        int i, A[10];
        for (i=0; i<10; i++) /**/
            A[i] = i;
    }]
    .
    
    

    输出样例2:

    NO
    ?-]
    

    输入样例3:

    void test()
    {
        int i
        double A[10];
        for (i=0; i<10; i++) /**/
            A[i] = 0.1*i;
    }
    .
    
    

    输出样例3:

    YES
    

    思路:

    因为输入中有/* */这种两个单元的符号,遂考虑一个判断函数,用来将符号转化为数字,左边为正数,右边为负数。

    遇到正数符号的时候直接入栈,遇到负数符号的时候,判断currentChar + s.top()是否为零,

    为零:出栈

    不为零:printError(s.top())

    其他情况自行阅读代码。

    上代码:

    #include <iostream>
    #include <cstring>
    #include <string>
    #include <stack>
    #include <map>
    using namespace std;
    
    // /**/{}()[]
    typedef int Position;
    
    struct CodeStream {
    	string code;
    	Position pos = 0;
    	Position length = 0;
    };
    
    map<char, int> symbolVal{
    	{'(', 1}, {')',-1},
    	{'[', 2}, {']',-2},
    	{'{', 3}, {'}',-3},
    };
    map<int, string> valSymbol{
    	{1,"("}, {-1,")"},
    	{2,"["}, {-2,"]"},
    	{3,"{"}, {-3,"}"},
    	{4,"/*"},{-4,"*/"}
    };
    
    CodeStream& getInput();
    int getMark(CodeStream& codeStream);
    void printError(int c);
    
    int main() {
    	auto codeStream = getInput();
    	stack<int> s;
    	while (codeStream.pos < codeStream.length) {
    		const auto currentSymbol = getMark(codeStream);
    		if (currentSymbol > 0) {
    			s.push(currentSymbol);
    		} else if (currentSymbol < 0) {
    			if (s.empty()) printError(currentSymbol);
    			if (s.top() + currentSymbol) printError(s.top());
    			else s.pop();
    		}
    		codeStream.pos += 1 + (abs(currentSymbol) == 4);
    	}
    	if (!s.empty()) printError(s.top());
    	cout << "YES" << endl;
    	return 0;
    }
    
    CodeStream& getInput() {
    	auto rtn = new CodeStream;
    	char tmpString[1000]{ '\0' };
    	do {
    		rtn->code += tmpString;
    		cin.getline(tmpString, sizeof tmpString);
    	} while (strcmp(tmpString, ".") != 0);
    	rtn->length = rtn->code.length();
    	return *rtn;
    }
    
    int getMark(CodeStream& codeStream) {
    	const auto currentChar = codeStream.code[codeStream.pos];
    	if (symbolVal.find(currentChar)!=symbolVal.end()) {
    		return symbolVal[currentChar];
    	}
    	if (currentChar == '/' && codeStream.code[codeStream.pos + 1] == '*') 
    		return 4;
    	if (currentChar == '*' && codeStream.code[codeStream.pos + 1] == '/') 
    		return -4;
    	return 0;
    }
    
    void printError(int c) {
    	cout << "NO" << endl;
    	if (c < 0) cout << "?-" << valSymbol[c] << endl;
    	else cout << valSymbol[c] << "-?" << endl;
    	exit(0);
    }

     

    展开全文
  • 7-3 符号配对 (20分)

    2021-05-22 06:48:11
    7-3符号配对(20分)请编写程序检查C语言源程序中下列符号是否配对:/*与*/、(与)、[与]、{与}。输入格式:输入为一个C语言源程序。当读到某一行中只有一个句点.和一个回车的时候,标志着输入结束。程序中需要检查配对...
  • 7-2 符号配对|PTA

    2022-04-20 23:30:10
    7-2 符号配对 请编写程序检查C语言源程序中下列符号是否配对:/*与*/、(与)、[与]、{与}。 输入格式: 输入为一个C语言源程序。当读到某一行中只有一个句点.和一个回车的时候,标志着输入结束。程序中需要检查配对的...
  • PTA 7-4 符号配对

    2022-04-04 22:48:55
    首先,如果所有符号配对正确,则在第一行中输出YES,否则输出NO。然后在第二行中指出第一个不配对的符号:如果缺少左符号,则输出?-右符号;如果缺少右符号,则输出左符号-?。 输入样例1: void test() { int i,...
  • 7-1【基础编程】【必做】【必须用链栈】【见课堂派资料的pta题目讲解视频】 符号配对 (20 分) 请编写程序检查C语言源程序中下列符号是否配对:/*与*/、(与)、[与]、{与}。 输入格式: 输入为一个C语言源程序。当读...
  • 7-3符号配对(20 分)请编写程序检查C语言源程序中下列符号是否配对:/*与*/、(与)、[与]、{与}。输入格式:输入为一个C语言源程序。当读到某一行中只有一个句点.和一个回车的时候,标志着输入结束。程序中需要检查配对...
  • 首先,如果所有符号配对正确,则在第一行中输出YES,否则输出NO。然后在第二行中指出第一个不配对的符号:如果缺少左符号,则输出?-右符号;如果缺少右符号,则输出左符号-?。 输入样例1: void test() { int i, A...
  • 标签:题目:请编写程序检查C语言源...输出格式:首先,如果所有符号配对正确,则在第一行中输出YES,否则输出NO。然后在第二行中指出第一个不配对的符号:如果缺少左符号,则输出?-右符号;如果缺少右符号,则输出...
  • 习题3.8 符号配对 (20 分) 请编写程序检查C语言源程序中下列符号是否配对:/*与*/、(与)、[与]、{与}。 输入格式: 输入为一个C语言源程序。当读到某一行中只有一个句点.和一个回车的时候,标志着输入结束。程序中...
  • 7-7 符号配对(20 分)

    2021-05-22 06:48:15
    请编写程序检查C语言源...输出格式:首先,如果所有符号配对正确,则在第一行中输出YES,否则输出NO。然后在第二行中指出第一个不配对的符号:如果缺少左符号,则输出?-右符号;如果缺少右符号,则输出左符号-?。输入...
  • 符号配对(Java)

    千次阅读 2020-01-17 17:30:42
    请编写程序检查C语言源程序中下列符号是否配对:/*...首先,如果所有符号配对正确,则在第一行中输出YES,否则输出NO。然后在第二行中指出第一个不配对的符号:如果缺少左符号,则输出?-右符号;如果缺少右符号,则...
  • 7-4 符号配对 (20 分)

    2022-04-01 13:40:47
    测试点5:左右符号个数相同,达到最大值,但不匹配。 若测试点5不过,可尝试: ...首先,如果所有符号配对正确,则在第一行中输出YES,否则输出NO。然后在第二行中指出第一个不配对的符号:如果缺少左符号,则输出?
  • PTA 符号配对

    千次阅读 2019-02-02 00:26:19
    符号配对 (20 分) 请编写程序检查C语言源程序中下列符号是否配对:/与/、(与)、[与]、{与}。 输入格式: 输入为一个C语言源程序。当读到某一行中只有一个句点.和一个回车的时候,标志着输入结束。程序中需要检查...
  • 符号配对

    千次阅读 2019-09-29 14:06:22
    请编写程序检查C语言源程序中下列符号是否配对:/*...首先,如果所有符号配对正确,则在第一行中输出YES,否则输出NO。然后在第二行中指出第一个不配对的符号:如果缺少左符号,则输出?-右符号;如果缺少右符号,则...
  • 7-2符号配对(20分)请编写程序检查C语言源程序中下列符号是否配对:/*与*/、(与)、[与]、{与}。输入格式:输入为一个C语言源程序。当读到某一行中只有一个句点.和一个回车的时候,标志着输入结束。程序中需要检查配对...
  • 习题3.8 符号配对 (20 分) 请编写程序检查C语言源程序中下列符号是否配对:/与/、(与)、[与]、{与}。 输入格式: 输入为一个C语言源程序。当读到某一行中只有一个句点.和一个回车的时候,标志着输入结束。程序中...
  • 习题3.8 符号配对 (20 分) 请编写程序检查C语言源程序中下列符号是否配对:/* 与 */、( 与 )、[ 与 ]、{ 与 }。 输入格式: 输入为一个C语言源程序。当读到某一行中只有一个句点.和一个回车的时候,标志着输入结束。...
  • 习题3.8 符号配对 (20分) c语言

    千次阅读 多人点赞 2020-04-06 23:58:10
    欢迎各位来讨论,我不知道我的代码哪里写错了,运行出来只是部分正确。。希望各位同学,各位大神讨论或者指点一二,共同进步~万分感谢!!! 请编写程序检查C语言源程序中下列...首先,如果所有符号配对正确,则在第...
  • 数据结构-符号配对

    2021-04-24 19:08:03
    首先,如果所有符号配对正确,则在第一行中输出YES,否则输出NO。然后在第二行中指出第一个不配对的符号:如果缺少左符号,则输出?-右符号;如果缺少右符号,则输出左符号-?。 输入样例1: void test() { int i,...
  • 7-1 符号配对 (20 分) 请编写程序检查C语言源程序中下列符号是否配对:/与/、(与)、[与]、{与}。 输入格式: 输入为一个C语言源程序。当读到某一行中只有一个句点.和一个回车的时候,标志着输入结束。程序中需要检查...
  • 5-4符号配对(20分)请编写程序检查C语言源程序中下列符号是否配对:/*与*/、(与)、[与]、{与}。输入格式:输入为一个C语言源程序。当读到某一行中只有一个句点.和一个回车的时候,标志着输入结束。程序中需要检查配对...
  • 7-2 符号配对

    千次阅读 2019-10-02 18:01:21
    7-2 符号配对 (20 分) 请编写程序检查C语言源程序中下列符号是否配对:/与/、(与)、[与]、{与}。 输入格式: 输入为一个C语言源程序。当读到某一行中只有一个句点.和一个回车的时候,标志着输入结束。程序中需要检查...
  • 符号配对 请编写程序检查C语言源程序中下列符号是否配对:/与/、(与)、[与]、{与}。 输入格式: 输入为一个C语言源程序。当读到某一行中只有一个句点.和一个回车的时候,标志着输入结束。程序中需要检查配对的符号不...
  • 7-6 符号配对 (24 分)

    2021-10-19 14:07:46
    #include<stdio.h> #include<stdlib.h>...//存储字符串里的全部要检查的符号 char str[500];//保留每一行的输入字符. int j=0; int flag=1;//最终判断 while(gets(str)) { if(str[0]=
  • 符号配对 (20 分)

    2022-03-06 18:23:35
    首先,如果所有符号配对正确,则在第一行中输出YES,否则输出NO。然后在第二行中指出第一个不配对的符号:如果缺少左符号,则输出?-右符号;如果缺少右符号,则输出左符号-?。 输入样例1: void test() { int i,...
  • 7-2 符号配对 (20分)

    千次阅读 2020-09-28 23:31:02
    7-2 符号配对 (20分) 请编写程序检查C语言源程序中下列符号是否配对:/与/、(与)、[与]、{与}。 输入格式: 输入为一个C语言源程序。当读到某一行中只有一个句点.和一个回车的时候,标志着输入结束。程序中需要检查...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 6,003
精华内容 2,401
关键字:

符号配对c语言

友情链接: G-S迭代.rar