首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组S中,请编写函数fun,它的功能是:函数返回指定学号的学生数据,指定的学号在主函数中输入。若没找到指定学号,在结构体变量中给学号置空串,给成绩置-1,作为函数值返回。(用于字符串比较的函数
学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组S中,请编写函数fun,它的功能是:函数返回指定学号的学生数据,指定的学号在主函数中输入。若没找到指定学号,在结构体变量中给学号置空串,给成绩置-1,作为函数值返回。(用于字符串比较的函数
admin
2015-06-08
56
问题
学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组S中,请编写函数fun,它的功能是:函数返回指定学号的学生数据,指定的学号在主函数中输入。若没找到指定学号,在结构体变量中给学号置空串,给成绩置-1,作为函数值返回。(用于字符串比较的函数是strcmp)。
注意:部分源程序在文件PROGI.C中。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
#include
#include
#define N 16
typedef struer
{ char num[10];
int s;
}STREC ;
STREC fun(STREC *a,char*b)
{
}
main()
{STREC s[N]={{“GA005”,85),{“GA003”,76},{“GA002”,69},{“GA004”,85},{“GA001”,91},{“GA007”,72},{“GA008”,64},{“GA006”,87},{“GA015”,85},{“GA013”,91},{“GA012”,64},{“GA014”,91},{“GA011”,77},{“GA017”,64},{“GA018”,64},{“GA016”,72}};
STREC h;
char m[10];
int i;FILE *out;
printf(“The original data:\n”);
for(i=0; i
{ if(i%4==0)printf(“\n”);
printf(“%s%3d”,s
.nHm,s
.s);
}
printf(“\n\nEnter the number:
”);gets(m);
h=fun(s,m);
printf(“The data:”);
printf(“\n%s %4d\n”,h.num,h.s);
printf(“\n”);
out=fopen(“out.dat”,“w”);
h=fun(s,“GA013”);
fprintf(out,“%s %4d\n”,h.num,h.s);
fclose(out);
}
选项
答案
STREC C; int i: c.num[0]=’\0’;./*置初始空串*/ c.s=一1 ; /*置成绩为一1*/ for(i=0; i
解析
该程序功能是函数返回指定学号的学生数据,指定的学号在主函数中输入。解题思路是在循环过程中,使用if判断表达式,将输入的学号与所有的学号进行比较,如果找到该学号,将其赋值到指定变量,否则将空格赋值到指定变量,表明没有查找到该学号。
转载请注明原文地址:https://kaotiyun.com/show/UaJp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
有以下程序:int*f(int*x,int*y){if(*x<*y)returnx;elsereturny;}main(){inta=7,b=8,*p,*q,*r;p=&a;q=
有如下程序段int*p,a=10,b=1;p=&a;a=*p+b;执行该程序段后,a的值为______。
有如下程序main(){intx=1,a=0,b=0;switch(x){case0:b++;case1:a++;case2:a++;b++;}pr
若fp是指向某文件的指针,且已读到此文件的末尾,则函数feof(fp)的返回值是_______。
以下程序的输出结果是_______。main(){intw=5;fun(w);printf("\n");}fun(intk){if(k>0)fun(k-1);printf("%d",k);
请选出以下程序的输出结果_______。#include<stdio.h>sub(int*s,inty){staticintt=3,y=s[t];t-;}main(){inta[]={
请读程序:#include<stdio.h>main(){inta,b;for(a=1,b=1;a<=100:a++){if(b>=20)break;if(b%3=1
假定下列程序的可执行文件名为filel.exe,在该程序的子目录下输入命令行:file1ChinaBejing<回车>main(intargc,char*argv[]){while(argc-->1)printf("
以下函数用来求出两整数之和,并通过形参将结果传回,请填空。voidfunc(intx,inty,【】z){*z=x+y;}
随机试题
耻骨联合
A.栓塞B.猝死C.二者均有D.二者均无
A.多尿、夜尿、低渗尿B.脓尿、菌尿C.血尿、少尿、蛋白尿D.血红蛋白尿急性肾盂肾炎的尿液改变是
某人常乘飞机来往于国内外各大城市。由于目睹一次空难惨状,因而对乘飞机产生恐惧心理,乘机前严重焦虑,不敢登机。对这种情况,比较实用的心理治疗方法为
某企业只生产和销售A产品,2019年的其他有关资料如下:(1)总成本习性模型为Y=10000+3X。(2)A产品产销量为10000件,每件售价为5万元。(3)按照平均数计算的产权比率为2,平均所有者权益为10000万元.负债的平均利率为10%。(4
以下关于企业内部控制审计说法错误的有()。
税务所可以在一定限额以下实施罚款作为税务行政处罚,该限额为()。(2014年)
下列标准代号中,(18)是我国地方标准的代号。
【S1】【S8】
Mr.Dowsonlived36Mr.Carey’s.Mr.Dowsonwasrich,butrude(粗鲁的).Healwaysthought37thebestmanintheworldandcouldne
最新回复
(
0
)