C语言40分求助
查看原帖
C语言40分求助
1419313
dida_0420楼主2024/12/7 16:56
#include <math.h>
#include <ctype.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <stdbool.h>
char  a[10005][1005],b[10005][1005],A[10005][1005],B[10005][1005];
int main()
{
	int k=0;
	int m;
//读入
	for(int i=0;;i++)
	{
		gets(a[i]);
		if(a[i][0]=='E'&&a[i][1]=='O'&&a[i][2]=='F')
		{
			m=i;
			break;
		}
	}
	for(int i=0;;i++)
	{
		gets(b[i]);
		if(b[i][0]=='E'&&b[i][1]=='O'&&b[i][2]=='F')
		break;
	}

	int t,cnt=0;
	scanf("%d",&t);
//去掉<
for(int i=0;i<m;i++)
   {
   	int q=0,n=0;
   	A[i][0]=a[i][0];
   		for(int j=0;;j++)
		{
			if(a[i][j]=='\0'&&A[i][j]=='\0')
			break;
   		if(a[i][j]=='<')
			{
				if(j-n*2-q==0)
				q++;
				else
				n++;
			}
			A[i][j+1-n*2-q]=a[i][j+1];
			
	}
   }	
   for(int i=0;i<m;i++)
   {
   	int q=0,n=0;
   	B[i][0]=b[i][0];
   		for(int j=0;;j++)
		{
			if(b[i][j]=='\0'&&B[i][j]=='\0')
			break;
   		if(b[i][j]=='<')
			{
				if(j-n*2-q==0)
				q++;
				else
				n++;
			}
			B[i][j+1-n*2-q]=b[i][j+1];
			
	}
   }
//判断计数
	for(int i=0;i<m;i++)
	{
		int n=0,q=0;
		for(int j=0;j<100005;j++)
		{
			if(A[i][j]=='\0'||b[i][j]=='\0')
			break;
			if(A[i][j]==B[i][j])
			cnt++;
		}
	}
	double r=(double)cnt/t*60.0;
	printf("%d",(int)round(r));
 return 0;
}

2024/12/7 16:56
加载中...