Archlinux
GCC 13.1.1 20230429
2023-07-20 17:55:02 星期四
点击查看代码
#include<stdio.h>
#include<stdlib.h>
int main()
{
int i, sma, med, big;
FILE *fp;
char tmp[100] = "";
i = sma = med = big = 0;
fp = fopen( "file.c", "r" );
while( fgets( tmp, 100, fp ) != NULL )
{
for( i=0; tmp[i]!='\0'; i++ ){
if( (tmp[i] == '(') && (tmp[i+1] != '\'') ) sma++;
else if( (tmp[i] == ')') && (tmp[i+1] != '\'') ) sma--;
if( (tmp[i] == '[') && (tmp[i+1] != '\'') ) med++;
else if( (tmp[i] == ']') && (tmp[i+1] != '\'') ) med--;
if( (tmp[i] == '{') && (tmp[i+1] != '\'') ) big++;
else if( (tmp[i] == '}') && (tmp[i+1] != '\'') ) big--;
}
}
if( sma != 0 ){ printf("'(',')'多余或缺少%d个!\n", abs(sma)); }
if( med != 0 ){ printf("'[',']'多余或缺少%d个!\n", abs(med)); }
if( big != 0 ){ printf("'{','}'多余或缺少%d个!\n", abs(big)); }
fclose( fp );
return 0;
}
运行截图:
输出正确。
小白刚学习C语言,代码质量不高,欢迎评论。