niusouti.com

定义一个结构体类型,用来描述学生信息,包括:姓名,学号,各科成绩等。 { char name[10]; char sex; float chin; float eng; float math; }; 在划线处填上正确的选项()。A.struct StudentB.structC.StudentD.以上都不正确

题目

定义一个结构体类型,用来描述学生信息,包括:姓名,学号,各科成绩等。 { char name[10]; char sex; float chin; float eng; float math; }; 在划线处填上正确的选项()。

A.struct Student

B.struct

C.Student

D.以上都不正确


相似考题
更多“定义一个结构体类型,用来描述学生信息,包括:姓名,学号,各科成绩等。 { char name[10]; char sex; float chin; float eng; float math; }; 在划线处填上正确的选项()。”相关问题
  • 第1题:

    阅读以下说明C++代码,将应填入(n)处的字句写在对应栏内。

    [说明]

    本程序实现了雇员信息管理功能,其中封装了雇员信息及其设置、修改、删除操作。已知当输入为“Smith 31 2960.0”时,程序的输出是:

    姓名:Smith 年龄:31 工资:2960

    姓名:Smith 年龄:31 工资:3500

    姓名:Mary 年龄:23 工资:2500

    [C++程序]

    include <iostream.h>

    include <string.h>

    class employee{

    char *name; //雇员姓名

    short age; //年龄

    float salary;//工资

    public:

    employee();

    void set_name(char *);

    void set_age(short a) {age=a;}

    void set_salary(float s) {salary=s;}

    (1);

    ~ employee(){delete[] name;}

    };

    employee::employee() { name="";

    age=0;

    salary=0.0;

    void employee::set_name(char *n)

    { name=new char[strlen(n)+1];

    (2) (name,n);

    }

    void employee::print()

    { cout<<"姓名":"<<name<<" 年龄:"<<agc<<" 工资:" <<salary<<endl;

    }

    void main()

    { char *na;

    short ag=0;

    float sa=0;

    (3);

    na=new char[10];

    cin>>na>>ag>>sa;

    emp.set_name(na);

    emp.set_age(ag);

    emp.set_salary(sa);

    emp.print();

    (4) (3500.0);

    emp.print();

    (5);

    emp.set_name("Mary");

    emp.set_age(23);

    emp.set_salary(2500.0);

    emp.print();

    }


    正确答案:(1) void print() (2) strcpy (3) employee emp (4) emp.set_salary (5)emp.~employee()
    (1) void print() (2) strcpy (3) employee emp (4) emp.set_salary (5)emp.~employee() 解析:程序定义了一个employee类,它包含了一个雇员的档案数据,及对这些数据的若干处理函数:构造函数employee创建一个雇员空档案;set_name(),set_age ()和set_salary()分别用来为雇员档案填入姓名、年龄和工资;print()函数的功能是输出该雇员的档案内容;析构函数~employee()的功能是当某雇员档案撤销或改成另一姓名时,释放原数据占用的空。
    (1)此处应声明print函数;
    (2)此处应调用字符申拷贝函数,以更改name属性的值;
    (3)此处显然应声明emp变量;
    (4)~(5):由程序的输出可知(4)处重新设置了emp变量salary属性的值,(5)处则应调用析构函数.

  • 第2题:

    C语言中各种基本数据类型的存储空间长度排列为( )

    A.char≤long≤int≤float≤double

    B.double≤float≤long≤int≤char

    C.char≤int≤long≤float≤double

    D.float≤int≤long≤char≤double


    正确答案:C

  • 第3题:

    现有定义int a;double b;float c;char k;,则表达式a/b+c-k值的类型为

    A.int

    B.double

    C.float

    D.char


    正确答案:B

  • 第4题:

    下列选项中,列出用于定义类成员的访问控制权的一组保留字是 ( )

    A.class,float,double,public

    B.float,boolean,int,long

    C.char,extends,float,double

    D.public,private,protected


    正确答案:D
    解析:public定义的是公有的,private定义的是私有的,定义为protected的方法和成员变量能被同一个包里的所有类所访问,就像默认修饰符package一样。像float、double、int、long、char这些都不能定义类成员的访问控制权,所以本题的答案选择D。

  • 第5题:

    下列引用的定义中,( )是错误的。

    A.int i; int &j=i;

    B.int i; int &j; j=i:

    C.float i; float &j=i;

    D.char d; char &k=d;


    正确答案:B

  • 第6题:

    自动类型转换规定的优先次序是( )。

    A.short,byte,char→long→int→float→double

    B.short,byte,char→int→long―float→double

    C.byte,short,char→long→int→float→double

    D.byte,short,char→int→long→float→double


    正确答案:D

  • 第7题:

    自动类型转换是按优先关系从低级数据转换成高级数据,规定的优先次序是( )。

    A.byte,short,char→int→long→float→double

    B.float→int→long→byte,short,char→double

    C.int→long→float→double←byte,short,char

    D.double→int→folat→long→byte,short,char


    正确答案:A

  • 第8题:

    若有下面的说明和定义: struct test { char m2; float m3; union uu{ char u1[5]; float u2; }ua; }MyStruct; 则sizeof(MyStruct)的值是( )。

    A.10

    B.11

    C.12

    D.9


    正确答案:A
    解析:C++中,联合体变量所占内存字节数与其成员中占字节数最多的那个成员相等。联合体中,浮点变量u2占4个字节,字符型数组u1占5个字节,所以联合体u1占5个字节。整个结构体所占字节数为10。

  • 第9题:

    以下代码中变量result的可能类型有哪些?byte b = 11;short s = 13;result = b * ++s;

    A.byte, short, int, long, float, double

    B.boolean, byte, short, char, int, long, float, double

    C.byte, short, char, int, long, float, double

    D.byte, short, char

    E.int, long, float, double


    正确答案:E
     

  • 第10题:

    switch(表达式)语句中的“表达式”,允许的类型是()。

    • A、float,int
    • B、float,int,char
    • C、int,char
    • D、char,double

    正确答案:C

  • 第11题:

    下列选项中,按照箭头方向,可以进行自动类型转换的是()。

    • A、char→int
    • B、short→char
    • C、float→long
    • D、char→short

    正确答案:A

  • 第12题:

    用于定义类成员的访问控制权的一组关键字是()。

    • A、class,float,double,public
    • B、float,boolean,int,long
    • C、char,extends,float,double
    • D、public,private,protected

    正确答案:D

  • 第13题:

    下面程序和运行运行结果是【 】。

    typedef union student

    { char name [10];

    long sno;

    char sex;

    float score [4];

    } STU;

    main ( )

    { STU a[5];

    prinff( "% d\n", sizeof(a) );

    }


    正确答案:80
    80

  • 第14题:

    自动类型转换是按优先关系从低级数据转换成高级数据,规定的优先次序是( )。

    A.byte, short, char→int→long→float→double

    B.float→int→long→byte, short, char→double

    C.int→long→float→double→byte, short, char

    D.double→int→float→long→byte, short, char


    正确答案:A

  • 第15题:

    Java语言中数据类型之间的自动类型转换是由优先关系从低级数据类型转换成高级数据类型,下面选项中自动类型转换优先级由低到高排列正确的是

    A.char→long→int→double→float

    B.char→int→long→double→float

    C.char→int→long→float→double

    D.char→int→float→double→long


    正确答案:C
    解析:自动类型转换是按优先关系从低级数据转换成高级数据,规定的优先次序是char→int→long→float→double。对自动类型转换的优先关系不了解。

  • 第16题:

    下面程序的运行结果是typedef union student{ char name[10]; long sno; char sex; float score[4];}STU;main(){ STU a[5]; printf("%d\n",sizeof(a));}


    正确答案:80
    根据共用体变量的特点可知,共用体变量所占的内存长度等于最长的成员的长度,所以变量STU所占的字节数等于其成员score[4]所占的字节数,即为16个字节,最终打印出共用体数组a[5]的长度为16´5=80。

  • 第17题:

    建立一个学生信息表student,要求它由学号sno、姓名sname、性别sex、年龄age4个属性组成,其学号属性唯一,学号、姓名字段不能为空。下列语句正确的是

    A.CREATE TABLE student(sno char(5) NOT NULL sname char(8) NOT NULL sex char(1) age int);

    B.CREATE TABLE student (sno char(5) NOT NULL UNIQUE sname char(8) sex char(1) age int);

    C.CREATE TABLE (sno char(5) NOT NULL UNIQUE sname char(8) NOT NULL sex char(1) age int);

    D.CREATE TABLE student (sno char(5) NOT NULL UNIQUE sname char(8) NOT NULL sex char(1) age int);


    正确答案:D
    解析:A) 选项中,创建sno字段没有唯一性限制;B) 选项中,创建sname字段没有不为空的限制; C) 选项中,创建表没有表明。

  • 第18题:

    若有以下定义:char a;int b;float c;double d;则表达式a*b+d-c值的类型为( )。A.A. float SXB

    若有以下定义:

    char a;int b;

    float c;double d;

    则表达式a*b+d-c值的类型为( )。

    A.A. float

    B.int

    C.char

    D.double


    正确答案:D
    在表达式a*b+d-c中,double的类型最高,C语言中,由低类型自动向高类型转换,所以最后的结果一定是double型。

  • 第19题:

    建立一个学生信息表student,要求它由学号sno,姓名sname,性别sex,年龄age,4个属性组成,其学号属性惟一,学号、姓名字段不能为空。下列语句正确的是

    A.CREATE TABLE student (sno char(5)NOT NULL sname char(8)NOT NULL sex char age int);

    B.CREATE TABLE student (sno char(5)NOT NULL UNIQUE sname char(8) sex char age int);

    C.CREATE TABLE (sno char(5)NOT NULL UNIQUE sname char(8)NOT NULL sex char age int);

    D.CREATE TABLE student (sno char(5)NOT NULL UNIQUE sname char(8)NOT NULL sex char age int);


    正确答案:D
    解析:本题主要考查了SQL语言中,创建基本表的方法。 A)选项中,创建sno字段没有惟一性限制;B)选项中,创建sname字段没有不为空的限制;C)选项中,创建表没有表明。

  • 第20题:

    有以下程序:includeincludetypedef struct{char name[9];char sex;float s

    有以下程序: #include <stdio.h> #include <string.h> typedef struct{char name[9];char sex;float score[2]}STU; STU f(STU A) {STU b={"Zhao",'m',85.0,90.0}; int i; strcpy(a.name,b.namC) ; a.sex=b.sex; for(i=0;i<2;i++) a.score[i]=b.score[i]; return a; } main() {STU c={"Qian",'f',95.0,92.0},d; d=f(C) ; pintf("%s,%c,%2.of.%2.of\n",d.name,d.sex,d.score[0],&score[1]); } 程序的运行结果是( )。

    A.Qian,f,95,92

    B.Qian,m,85,90

    C.Zhao,m,85,90

    D.Zhao,C95,92


    正确答案:C
    解析:本题的f()函数中,首先定义了一个STU结构体变量b并初始化为{"Zhao",'m',85.0,90.0},然后分别通过strcpy()库函数、赋值语句和for循环,将b中所有成员分别赋给形参a的相应成员,最后返回a。所以,无论传递给函数fun()的参数是什么,结果返回的都会是函数中定义的STU结构体b的内容{"Zhao",'m',85.0,90.0}。故最终输出结果为:Zhao,m,85,90;应该选择C。

  • 第21题:

    变量W_data定义如下:union data_node{float ff'int n;char ch;}W_data;则变量W_data所占的内存存储空间可表示为______。

    A.sizeof(int)
    B.sizeof(char)
    C.sizeof(float)
    D.sizeof(int)+sizeof(char)+sizeof(float)

    答案:C
    解析:
    本题考查C语言编程的基本知识。本题中变量W_data类型为联合。联合中所有数据项占有相同的内存空间。联合体所占的内存存储空间为所包含数据项所占的内存存储空间的最大值。

  • 第22题:

    以下定义语句中正确的是()

    • A、char a=’A’ b=’B’;
    • B、float a=b=10.0;
    • C、int a=10,*b=&a;
    • D、float *a,b=&a;

    正确答案:C

  • 第23题:

    在C语言中(以16为PC机为例),5种基本数据类型的存储空间长度的排列顺序为()。

    • A、char < int < long int <= float < double
    • B、char = int < long int <= float < double
    • C、char < int < long int <= float = double
    • D、char = int = long int <= float < double

    正确答案:A

  • 第24题:

    问答题
    给定程序通过定义并赋初值的方式,利用结构体变量存储了一名学生的学号、姓名和3门课的成绩。函数fun的功能是将该学生的各科成绩都乘以一个系数a。  请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。  注意:部分源程序给出如下。  不得增行或删行,也不得更改程序的结构!  试题程序:#include #include typedef struct{ int num; char name[9]; float score[3];} STU;void show(STU tt){ int i; printf(%d %s:,tt.num,tt.name); for(i=0; i<3; i++) printf(%5.1f,tt.score[i]); printf();}/*********found*********/void modify(①______ *ss,float a){ int i; for(i=0; i<3; i++)  /*********found*********/  ss->②______*=a;}main(){ STU std={1,Zhang,76.5,78.0,82.0}; float a; printf(The original number and name and scores:); show(std); printf(Input a number:); scanf(%f,&a); /*********found*********/ modify(③______,a); printf(A result of modifying:); show(std);}

    正确答案:

    ①STU
    ②score[i]
    ③&std
    解析:

      填空1:形参ss是一个结构型指针变量,应填STU。
      填空2:该学生的各科成绩都乘以一个系数a,应填score[i]。
      填空3:函数的调用,由于函数定义时使用的指针结构型变量,应填&std。