#include <stdio.h>
#include <stdlib.h>
#include <string.h>
long int N =0;
#define M 11
#define K 4
int main()
{
FILE *fp,*fp1;
long int a[M][K],i,j;
char x,c[M]={"0"};
fp=fopen("temp.txt","a+");
fp1=fopen("temp1.txt","a+");
for(i=0;i<M;i++)
{
for(j=0;j<K;j++)
a[i][j]=0;
}
fflush(stdin);
printf("请按顺序0-10题的答案,输入一串选项用1234表示ABCD如:12341234123,每次以回车结束\n");
printf("若想结束,连续输入11个0即可,结果保存在当前文件的temp.txt中,输入的选项在temp1.txt中,每次结果都累计放在里面,不会覆盖,不会消失,当完成所有输入时更换另一种食堂请将文件内清空,并将txt文本文件复制\n");
printf("请输入答案:\n");
while(1)
{
if(N==10000000000) {goto l2;}//exit(1);
l1:scanf("%s",c);
if(((c[0]>='1'&&c[0]<='4'&&c[1]>='1'&&c[1]<='4'&&c[2]>='1'&&c[2]<='3'&&c[3]>='1'&&c[3]<='3'&&c[4]>='1'&&c[4]<='3'&&c[5]>='1'&&c[5]<='3'&&c[6]>='1'&&c[6]<='3'&&c[7]>='1'&&c[7]<='3'&&c[8]>='1'&&c[8]<='3'&&c[9]>='1'&&c[9]<='3'&&c[10]>='1'&&c[10]<='3')||(c[0]=='0'&&c[1]=='0'&&c[2]=='0'&&c[3]=='0'&&c[4]=='0'&&c[5]=='0'&&c[6]=='0'&&c[7]=='0'&&c[8]=='0'&&c[9]=='0'&&c[10]=='0'))&&strlen(c)==11)
{
if(c[0]=='0'&&c[1]=='0'&&c[2]=='0'&&c[3]=='0'&&c[4]=='0'&&c[5]=='0'&&c[6]=='0'&&c[7]=='0'&&c[8]=='0'&&c[9]=='0'&&c[10]=='0')
{ goto l2;}//exit(1);
else
{
for(j=0;j<M;j++)
{
x=c[j]-'0';
a[j][x-1]=a[j][x-1]+1;
}
N++;
fprintf(fp1,"%s\n",c);
}
}
else
{
fflush(stdin);
printf("你输入的格式不正确\n");
if(N!=10000000000) goto l1;
else break;
}
}
fclose(fp1);
l2: fprintf(fp,"统计结果为:\n");
fprintf(fp,"%9c",'A');
for(i=1;i<K;i++)
{
fprintf(fp,"%7c",(i+'A'));
}
fprintf(fp,"\n");
for(i=0;i<M;i++)
{
fprintf(fp,"%2d",i);
for(j=0;j<K;j++)
{
fprintf(fp,"%7d",a[i][j]);
}
fprintf(fp,"\n");
}
fclose(fp);
return 0;
#include <stdlib.h>
#include <string.h>
long int N =0;
#define M 11
#define K 4
int main()
{
FILE *fp,*fp1;
long int a[M][K],i,j;
char x,c[M]={"0"};
fp=fopen("temp.txt","a+");
fp1=fopen("temp1.txt","a+");
for(i=0;i<M;i++)
{
for(j=0;j<K;j++)
a[i][j]=0;
}
fflush(stdin);
printf("请按顺序0-10题的答案,输入一串选项用1234表示ABCD如:12341234123,每次以回车结束\n");
printf("若想结束,连续输入11个0即可,结果保存在当前文件的temp.txt中,输入的选项在temp1.txt中,每次结果都累计放在里面,不会覆盖,不会消失,当完成所有输入时更换另一种食堂请将文件内清空,并将txt文本文件复制\n");
printf("请输入答案:\n");
while(1)
{
if(N==10000000000) {goto l2;}//exit(1);
l1:scanf("%s",c);
if(((c[0]>='1'&&c[0]<='4'&&c[1]>='1'&&c[1]<='4'&&c[2]>='1'&&c[2]<='3'&&c[3]>='1'&&c[3]<='3'&&c[4]>='1'&&c[4]<='3'&&c[5]>='1'&&c[5]<='3'&&c[6]>='1'&&c[6]<='3'&&c[7]>='1'&&c[7]<='3'&&c[8]>='1'&&c[8]<='3'&&c[9]>='1'&&c[9]<='3'&&c[10]>='1'&&c[10]<='3')||(c[0]=='0'&&c[1]=='0'&&c[2]=='0'&&c[3]=='0'&&c[4]=='0'&&c[5]=='0'&&c[6]=='0'&&c[7]=='0'&&c[8]=='0'&&c[9]=='0'&&c[10]=='0'))&&strlen(c)==11)
{
if(c[0]=='0'&&c[1]=='0'&&c[2]=='0'&&c[3]=='0'&&c[4]=='0'&&c[5]=='0'&&c[6]=='0'&&c[7]=='0'&&c[8]=='0'&&c[9]=='0'&&c[10]=='0')
{ goto l2;}//exit(1);
else
{
for(j=0;j<M;j++)
{
x=c[j]-'0';
a[j][x-1]=a[j][x-1]+1;
}
N++;
fprintf(fp1,"%s\n",c);
}
}
else
{
fflush(stdin);
printf("你输入的格式不正确\n");
if(N!=10000000000) goto l1;
else break;
}
}
fclose(fp1);
l2: fprintf(fp,"统计结果为:\n");
fprintf(fp,"%9c",'A');
for(i=1;i<K;i++)
{
fprintf(fp,"%7c",(i+'A'));
}
fprintf(fp,"\n");
for(i=0;i<M;i++)
{
fprintf(fp,"%2d",i);
for(j=0;j<K;j++)
{
fprintf(fp,"%7d",a[i][j]);
}
fprintf(fp,"\n");
}
fclose(fp);
return 0;
}
这是以前写的一个关于用c编写的用于统计学校的传单数据的小软件,用户界面不是很好,但用数据测试过,比较稳定。以前刚学的时候写的,不是很好