2019投影9与上机考试有关的文件语句

发布 2022-04-11 01:07:28 阅读 1058

下面就上机考试必须写的几条语句专门讨论。

1)指针变量声明:file *fp;

2)打开文件。

fp=fopen("t:\\w");

if(fp==null)

t盘是虚拟盘,在考试登录后才有,平时练习是没有的。如果盘符是d盘,则考试时运行成功后要将结果文件复制到指定的t盘。注意盘符加冒号后双斜线。

文件测试语句可以不写。

3)将运行结果写到文件中。

先将结果输出到屏幕,然后再复制一个语句,修改成文件输出函数,将结果写到文件中。输出到屏幕用printf函数,不管输出什么内容都可以用这个函数。

例如,输出数组各元素的值:for(i=0;i复制一个printf语句并修改,修改方法是:在函数名前加“f”,使printf变成fprintf,括号里加一个文件指针:

fprintf(fp,"%5d",a[i]);

输出数组元素并写到文件中最后变成如下形式:

for(i=0;i

注意for后加上花括号,两个语句都在循环体内。

有一个printf函数,就复制一下修改,保证在屏幕输出的同时写入文件,有的语句根据需要只输出到屏幕或者只写入文件。

4)将学号写到文件中:fprintf(fp," n my no.:12345678");

本语句是关闭文件语句的前面一条,相对独立。也可以用fputs等函数将学号写到文件,但是fprintf函数是最容易记得的,因为大家对printf函数很熟悉,只要先写成printf函数形式,再在函数前面添一个“f”,括号里面前面添“fp”和逗号“,”就可以了。

5)最后关闭文件:fclose(fp);

关闭文件在最后一个大括号前。

下面是一个将输出结果及学号写入文件的具体例子。

各程序除了fprintf不同外,其他与文件有关的语句都是相同的。

输入10个整数,将其中最小的数与第一个数交换,把最大的数与最后一个数交换,输出结果。假设最大的数和最小的数都只有一个。

#include <>

#define n 10

main()

int a[n], i,max,min,t,j,k ;

max存放最大数,min存放最小数。i循环变量,t临时变量*/

/*j表示最大数下标,k表示最小数下标*/

file *fp声明文件指针*/

fp=fopen("d:\\w打开文件*/

if(fp==null文件测试*/

printf("can not open the file!");exit(0);

for(i=0; i scanf("%d",&a[i]);输入10个整数*/

for(i=0; i

max=min=a[0]; j=k=0;

for(i=1; i if(max else if(min>a[i]) 找最大的数*/

t=a[0]; a[0]=a[k]; a[k]=t; /最小的数与第一个数交换*/

t=a[n-1]; a[n-1]=a[j]; a[j]=t; /最大的数与最后一个数交换*/

printf("after exchange:");

fprintf("fp,"after exchange:");

for(i=0; i

fprintf(fp," n my no.:12345678将学号写入文件*/

fclose(fp关闭文件*/

运行成功,可以用记事本打开结果文件查看结果是否正确。

例题:求出m行n列二维矩阵每列元素中的最小值,并计算它们的和。

1)编写函数int sumcolummin(int a[m][n])。函数功能:求出m行n列二维矩阵每列元素中的最小值,并计算它们的和,将和返回给main函数。

2)编写main函数,函数功能:声明一个2行4列的整型数组,并用测试数据初始化该数组,调用sumcolummin求取每列中最小元素之和,将结果输出到屏幕并用写文件函数保存到结果文件中。最后将本人的准考证也保存到结果文件中。

测试数据:

运行结果:sum=10

my exam number is:本人准考证字符串。

要求:1)源程序名必须取为程序运行输出的结果文件名必须取为。

2)数据文件的打开、使用、关闭均要使用c语言的文件操作语句实现。

3)源程序文件(和运行结果文件(均需保存在考试盘上, 供阅卷用。

4)不要将和保存到考试盘上。

#include ""

#define m 2

#define n 4

int sumcolummin(int a[m][n])

int i,j,t,sum=0sum赋初值*/

for(j=0;j

return(sum返回和*/

main()

int a[m][n]=,sum; 变量声明及初始化*/

sum=sumcolummin(a函数调用*/

printf("sum=%d", sum输出到屏幕*/

main()

int a[m][n]=,sum; 变量声明及初始化*/

file *fp文件指针声明*

fp=fopen("e:\\w打开文件*/

if((fp==null文件测试*

sum=sumcolummin(a函数调用*/

printf("sum=%d", sum输出到屏幕*/

fprintf(fp, "nsum=%d", sum输出到文件*/

fprintf(fp," n my no.:12345678");写入准考证号*/

fclose(fp关闭文件*/

2019上机考试A卷

2012 3013 2算法语言与程序设计上机考试 a卷 考试时间 2013.1.98 45 12 15共计3.5小时分数 每题20分,共完成5题,选做题附加分共计5分。请仔细阅读说明 4题为必做题,5 6题任选一题完成。6题全做可根据完成情况获得附加分。2 算法可读性占5分,书写规范性占5分。3 答...

2023年统计上机考试

11 公卫1班spss上机操作考试题。1 已知正常人乙酰胆碱酶的平均数为1.44u,现测定13例慢性气管炎患者的乙酰胆碱酶分别为 39,问慢性气管炎患者的乙酰胆碱酶含量与正常人有没有差别?问题 检验方法。spss操作步骤 建立数据文档 分析。若以 0.05作为检验水准,统计量p 结论 2 某医院中药...

2019会计从业上机考试题目

多选题 1.管理型会计软件必须具备的功能包括 a应收账款 应付账款管理。b财务报表管理。c制作现金流量表。d销售收入管理。2会计核算软件应用中,期末结账需要完成的主要工作有 a根据转账设置生成各种转账凭证。b停止本月各账户的记账工作。c计算本月各账户的发生额合计。d计算本月各账户期末余额并将其结转至...