| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 641 人关注过本帖
标题:c语言求教 这道题我真的不会!!
取消只看楼主 加入收藏
kikumanv
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2010-1-7
结帖率:50%
收藏
已结贴  问题点数:20 回复次数:3 
c语言求教 这道题我真的不会!!
随机产生10个2位数的加减乘除的算术题存放在文件d:\abc\cst1.datZ中,然后重新读取该文件,并计算出结果,输出到文件d:\abc\cst1_an.dat中,(除法只关心整除)
搜索更多相关主题的帖子: c语言 
2010-01-07 11:27
kikumanv
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2010-1-7
收藏
得分:0 
没错是一道作业  可是真的是遇到问题了  那个随机产生不知道怎么弄啊
2010-01-07 13:23
kikumanv
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2010-1-7
收藏
得分:0 
可不可以把怎么随机弄详细说一下   我的程序只能够输入  不能随机
2010-01-07 13:33
kikumanv
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2010-1-7
收藏
得分:0 
比如这个程序吧  没报错 但是没能出结果  能帮忙改改吗??


#include <stdio.h>
#include <stdlib.h>
#include <time.h>
void makecst1(FILE *fp)
{
   int a,b,i;
 char op;
   for (i = 0; i < 10; i++) {
    switch(rand()%4) {
     case 0:op='+';break;
     case 1:op='-';break;
     case 2:op='*';break;
     case 3:op='/';break;
    }
    if (op=='/') {
     a=rand()%90+10;
     b=(rand()%90+10)%a+1;
     b=a/b;
     a=(a/b)*b;
    }
    else{
           a=rand()%90+10;
     b=rand()%90+10;
    }
    fprintf(fp,"%d%c%d\n",a,op,b);
 }
}

void makecst1an(FILE *fp1,FILE *fp2)
{
 int a,b,c;
 char op;
 while (!feof(fp1))
  {
   fscanf(fp1,"%d%c%d\n",&a,&op,&b);
   switch (op) {
               
   default:
    case '+':c=a+b;break;
    case '-':c=a-b;break;
    case '*':c=a*b;break;
    case '/':c=a/b;break;
   }
   fprintf(fp2,"%d%c%d=%d\n",a,op,b,c);
  }
}
int main(void)
{
 FILE *fp1,*fp2;

 srand(time(0));
 fp1=fopen("d:\\abc\\cst1.dat","w+");
 if (fp1) {
  makecst1(fp1);
  rewind(fp1);
  fp2=fopen("d:\\abc\\cst1_an.dat","w");
  if (fp2) makecst1an(fp1,fp2);
  fclose(fp1);
  fclose(fp2);
 }
 return 0;
}
2010-01-07 13:49
快速回复:c语言求教 这道题我真的不会!!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016886 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved