前几天您回答了100以内进位加法和借位减法的C语言题目生成问题,想用office打印在A4纸上,如何操作?

如题所述

如果直接由C操作有些麻烦,提供一个应急办法——

1.将代码改成输出到文件。如下:

#include "stdio.h"

#include <stdlib.h>

#include "time.h"

int main(int argc,char *argv[]){

FILE *fp;///增加

int i,a,b,x,y,n;

printf("How many pages...\n");

if(scanf("%d",&n) && n<1)

return 0;

srand((unsigned)time(NULL));

if((fp=fopen("in100.txt","w"))==NULL){///创建文件

printf("Open the file failure, exit...\n");

return 0;

}

while(n--){

fprintf(fp,"班级:     姓名:        学号:    时间:\n");///改成写文件

for(i=0;i<17;i++){

if(rand()&1){

a=10*(x=rand()%9)+(y=rand()%9+1);

b=10*(rand()%(9-x))+9-rand()%y;

fprintf(fp,"%2d+%2d=",a,b);///改成写文件

}

else{

a=10*(x=rand()%9+1)+(y=rand()%9);

b=10*(rand()%x)+rand()%(9-y)+y+1;

fprintf(fp,"%2d-%2d=",a,b);///改成写文件

}

fprintf(fp,"                 ");///改成写文件

if(rand()&1){

a=10*(x=rand()%9)+(y=rand()%9+1);

b=10*(rand()%(9-x))+9-rand()%y;

fprintf(fp,"%2d+%2d=\n",a,b);///改成写文件

}

else{

a=10*(x=rand()%9+1)+(y=rand()%9);

b=10*(rand()%x)+rand()%(9-y)+y+1;

fprintf(fp,"%2d-%2d=\n",a,b);///改成写文件

}

}

}

fclose(fp);///关闭文件

return 0;

}

2.创建一个office文档,纸张选A4,页边距上下各2.54厘米,左右各3.18厘米;选择宋体2号字。

3.运行后在当前C程序目录下打开in100.txt文件,选择全部拷贝,再粘贴到office文档即可。下面是半页效果图。写字框是在office下做的,与C无关。

有问题续问。

温馨提示:答案为网友推荐,仅供参考