帮忙看几道C语言的期末题目(二)~3Q!

问题描述:

帮忙看几道C语言的期末题目(二)~3Q!
19、以下程序的运行结果是
void num() { extern int x,y; int a=15,b=10; x=a-b; y=a+b; }
int x,y; void main() { int a=7,b=5; x=a-b; y=a+b; num(); printf("%d,%d",x,y); }
A) 12,2 B)不确定 C) 5,25 D) 1,12
Extern定义的x和y改变了,为什么main中的x和y也会改变?难道不是main中局部
的优先级更大吗?
15.以下论述中正确的是
A) 实型数据占字节数多于整型数据,因此,实型运算比整型运算精确.
B) 二维数组元素有两个下标,在特殊情况下也可以是一个下标.
C) 如果a是带符号整型变量,b是无符号整型变量,则执行a=b后a的值一定为正.
D) 存放文本的文件称文本文件,存放二进制数的文件称二进制文件.
答案给的是B,其余的选项又怎么错了啊?
1.设变量n为float类型,m为int类型,则以下能实现将n中的数值保留小数点后两位,第三位进行四舍五入运算的正确表达式是
A)n=(n*100+0.5)/100.0 B)m=n*100+0.5,n=m/100.0
C)n=n*100+0.5/100.0 D)n=(n/100+0.5)*100.0
11.以下程序中,有一个不符合C语法规则的语句,这个语句是
#define N 5 main() {
A) int a[2*N]={0,0,0,0,0,0,0,0,0,0};
{
B) int i,a=2;
C) printf ( "\n %d\n",a );
D) for ( i=0; i

回答求助:19.答案是C.因为x、y不是在main中声明的,所以它们是全局变量.在fun函数中用extern说明了x、y,这就使fun中的x、y也是全局变量了.你把extern删除,运行一下就是2,12了;你在main中把x、y声明一下,也就不听fun...