导航菜单
首页 >  » 正文

计算机题目:有关信息与数据之间的联系,下列说法错误的是() A信息是数据的内涵,是对数据语义的解释 C语言编程,从键盘输入10个学生的成绩,由高到低排序输出成绩。

计算机题目:有关信息与数据之间的联系,下列说法错误的是() A信息是数据的内涵,是对数据语义的解释

选B
大学IT课本第4页有明确解释:
信息是有用的数据,数据是信息的表现形式,即原选项主客颠倒。

C语言编程,从键盘输入10个学生的成绩,由高到低排序输出成绩。

//如果只有成绩信息就可以用下面的代码

//如果还需要加入学号,姓名之类的信息,可以用结构体然后对成绩排序即可

#include"stdio.h"

int main()

{

int  d[10]={0},i,j,t;//数组d存放10个学生的成绩

for(i=0;i<10;i++)//输入10个成绩(空格分开)

scanf("%d",&d[i]);

for(i=0;i<9;i++)//排序 for(j=i+1;j<10;j++) if(d[i]<d[j]) {

t=d[i],d[i]=d[j],d[j]=t;

}

for(i=0;i<10;i++)//输出10个成绩

printf("%d  ",d[i]);

getch();

return 0;

}

c语言题目:若有下列定义:char a;int b;float c;double d;c*=b+d c,则c的类型为?

你好!!!
char a;int b;float c;double d;
c*=b+d-c这个表达式中含有不同的数据类型,那么编译器就会自动把低级类型向高级类型转换(当然这个转换是自动转换的)即编译器会把char ,int, float 转换成double的类型,
c*=b+d-c但是我们定义变量c是float类型的,那么这个计算结果就会强制转换成float,然后把转化后float类型的数据在赋值给变量c.
总结:在有不同类型的计算中,都会把低级运算想高级运算自动转化,要是表达式中都float,那么其他低于float类型的都会转化成float,要是有double也是如此。
但是注意一点:编译器在计算的时候是按等级最高的类型计算的,计算的只是表达式结果的类型,那要是把高级类型的几个赋值给低级类型,会发出自动转换。比如:
char a;int b;float c;double d;
表达式a+b+c+d,那么这个表达式中最高的类型就是double,那么表达结果的类型就是double,但是我们可把double类型赋值给int 类型:int x=a+b+c+d,那么此时x的类型还是int

相关推荐: