了解湖南/长沙凯时app资讯,从湖南凯时app网开始!湖南凯时app报名湖南凯时app本科
您当前的位置:凯时app > 湖南凯时app考前练习

凯时app“高级语言程序设计”经典习题及答案(31)

凯时app“高级语言程序设计”经典习题及答案(31)

 

  5.编程序,对上一题中名为“CCW.TXT”的磁盘文件中“@”之前的所有字符解密并显示。GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  “解”要编写的程序完成与上一程序功能相反的工作,将上述程序中的DALTA定义成一10即可。完整程序略。GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  6.输入100个学生的信息(含学号、姓名、年龄、七门课程成绩、总分),其中学生的总分由程序计算产生。先将学生信息存入磁盘二进制数据文件student.dat中。然后再读取该文件,寻找总分最高的学生并输出该生的所有信息。GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  “解”程序要定义一个结构,逐一输入学生信息,并完成学生的总分计算,将学生信息存到该结构中,然后将该结构信息存入文件。设学生信息的输入以学生的学号为负数结束。然后,程序再用循环从这文件读入学生信息,将其中总分更高的学生信息存入另一结构中。循环结束后,结构中存储的就是总分最高学生的信息。最后,显示这总分最高的学生信息。程序如下:GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  # includeGcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  # includeGcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  # includeGcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  struct stu {GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  long no;GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  char name[20];GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  int age;GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  int score[7];GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  int total;GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  } student, maxs;GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  FILE *fp;GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  void main()GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  { char buf[120];int total,i,t;long lt;GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  if((fp= fopen(“student.dat”,“wb”))== NULL) {GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  printf(“Can‘t open file %s./n”,“student.dat” );exit(0);GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  }GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  printf(“输入学生的学号、姓名、年龄、七门课程成绩(学号小于0结束) /n”);GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  while(1) {GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  scanf(“%ld”, <); student.no = lt;GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  if(student.no< 0) break;GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  scanf(“%s”, buf); strncpy( student.name, buf,19);GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  scanf(“%d”, &t); student.age = t;GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  for( total = 0, i = 0; i < 7;i++) {GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  scanf(“%d”,&t); student.score= t;GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  total+= t;GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  }GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  student.total= total;GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  fwrite(char *) & student,sizeof student, 1, fp);GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  }GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  fclose(fp);GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  if((fp = fopen(“student.dat”,“rb”))== NULL) {GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  printf(“Can‘t open file %s./n”,“student.dat”);exit(0);GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  }GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  maxs.total=-100;GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  While( !feof(fp)) {GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  fread((char *) & student,sizeof student,l,fp);GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  if( student.total> maxs.total) maxs=student;GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  }GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  fclose(fp);GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  printf(“总分最高的学生信息:/n”);GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  printf(“学号:%ld”, maxs.no);GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  printf(“ /t姓名:%s”,maxs,name);GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  printf(“/t年龄::%d/n成绩:”, maxs.age)GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  for( i=0; i< 7; i++)GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  printf(“m”,maxs.score);GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  printf(“/nTOTAL = %d/n”, maxs. total);GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  }GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  9.1 单项选择题GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  1.在下列代码中,正确的C代码是( )GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  ①# define MYNAME=“ABC”GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  ②# include string.hGcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  ③ for(i=0;i<10; i++);GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  ④ struct int stu { int name };GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  “解”①是关于宏定义的,在宏的定义形式中,宏名与字符列之间至少有一个空白符,并在宏名希望代表的字符序列之间也不能有任何非空格类字符,若有也被当作是字符序列的一部分。有了宏定义,以后程序中若要有宏名后的字符序列就可简写成宏名。选择①在宏名之后紧接字符=.②是关于包含命令的,在上述包含命令的格式中,被包含文件应放在一对尖括号之间,或一对双引号之间,不可在文件名字符列的首末没有这种符号。③是for语句,for语句的循环体可以用空语句,从语言的句法规则来说,该语句是正确的。但通常循环是为了完成某种重复计算操作,单一地让一个变量循环增1到某个值,程序员是不会编写这种代码的。④是想定义结构类型,定义结构时,struct后接结构类型名,不可在结构名之前插入某些其它类型符。正确解答是③。GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  2.在下列代码中,正确的C代码是( )GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  ①# define PI=3.14159GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  ② include“stdio.h”GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  ③ for(i=0,i<10, i++) a++;GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  ④static struct { int i;} b ={2};GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  “解”①定定义时,宏名与被定义的字符列之间不可以插入等号等其它字符。选择答案②是包含文件预处理,所有的预处理命令都应由字符# 开始于新的一行。③在写for语句时,其中的三个表达式必须用字符“;”分隔。④在定义结构变量时,结构的类型名可以省缺,并可为结构变量赋初值。为结构变量赋初值,必须顺序给出各成分的初值,并将初值写在一对花括号中。这里给出的结构变量定义的代码是正确的。正确解答是④。GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  3.在下列代码中,错误的C代码是( )GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  ①# define PI 3.14159GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  ②# include“stdio.h”;GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  ③ if(2);GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  ④ for(;;) if(1) break;GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  “解”①是正确的宏定义。②的文件包含预处理命令行不可以有多余的分号字符。③是if语句,虽没有任何意义,但就句法来说是正确的。④是for语句,其成分语句是if语句,从for语句来说,是一个无穷循环的控制结构,但它的成分语句因条件成立,执行break语句,立即退出循环。同样虽也是一条没有任何意义的语句,但从句法规则来说,也是正确的。正确解答是②。GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  4.设有以下定义,则执行语句“z=2*(N+Y(5+1));”后,z的值为( )GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  # define N 3GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  # define Y(n)((N+l)*n)GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  ①出错 ②42 ③48 ④54GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  “解”在新的宏定义中,可以使用前面已定义的宏名。另外,宏调用是这样被替换展开的,分别用宏调用中的实在参数字符序列替换定定义字符序列中对应所有出现的形式参数。而宏定义字符序列中的不是形式参数的其他字符则保留。这样形成的字符序列,即为宏调用的展开替换结果。所以代码“z=2*(N+Y(5+1));”被替换成:GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  z=2*(3+((3+1)*5+1));GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  执行该代码,将使Z的值为48.解答为③。GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  5.以下程序中的for循环执行的次数是( )GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  # includeGcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  # define N 2GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  # define M N+1GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  # define NUM(M+l)* M/2GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  main()GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  { int i, n=0;GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  for( i= l; i<=NUM;i++) { n++; printf(“%d”,n); }GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  printf(“/n”);GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  }GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  ①5 ②6 ③8 ④9GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

  “解”代码NUM被替换成(2+1+1)*2+1/2,所以其值是8.所以程序中的脸循环执行的次数是8次。正确解答是③。GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

 GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

GcJ湖南凯时app网_湖南凯时app本科_湖南凯时app报名_凯时app

 

凯时app“高级语言程序设计”经典习题及答案(31)

    湖南凯时app网——致力于打造湖南凯时app网第一网,以努力服务于广大湖南凯时app学子、提供最全的湖南凯时app资讯为己任,发布湖南凯时app最新的新闻资讯,提供湖南凯时app专科湖南凯时app本科湖南凯时app报名湖南凯时app成绩查询等综合信息

 

湖南凯时app
相关文章
    无相关信息
湖南网站主页
湖南凯时app政策
凯时app30年大事
湖南凯时app专业
湖南凯时app问答
名家访谈
湖南凯时app故事
湖南凯时app院校
湖南凯时app大纲
凯时app复习方法
凯时app笔记串讲
凯时app应试技巧
湖南凯时app真题
湖南凯时app就业
湖南论文指导
湖南凯时app实践
湖南凯时app学位
凯时app成绩查询
凯时app考籍查询
凯时app学历查询


咨询QQ:137847917
13548661633(微信同号)

w66利来国际 w66利来国际 w66利来国际 w66利来国际 w66利来国际