C语言题目 分少是少,诚心请教,麻烦告诉下,看看自己选的是对的吗?望请批改!

1、c语言规定:在一个源程序中,main函数的位置 c
A)必须在最开始
B)必须在系统调用的库函数的后面
C)可以任意
D)必须在最后
2、下面程序的运行结果是_____d_。
main()
{struct cmplx {int x;
int y;
}cnum[2]={1,3,2,7};
printf(”%d\n”,cnum[0].y/cnum[0].x *cnum[l].x);
}
A)0 B)1 C)3 D)6
3、表达式18/4*2/8值的数据类型为_A____
A)int B)float C)double D)不确定
4、以下不正确的叙述是 D 。
A)在c程序中,逗号运算符的优先级最低
B)在C程序中,APH和aph是两个不同的变量
c)若a和b类型相同,在执行了赋值表达式a=b后b中的值将放入a中,而b中的值不变。
D)当从键盘输入数据时,对于整型变量只能输入整型数值.对于实型变量只能输入实型数值。
5、以下程序的运行结果是__d____。
#include "stdio.h”
main()
{struct date
{int year,month,day;
}today;
printf(“%d\n”,sizeof(struct date));
}
A)6 B)8 C)10 D)12
6、以下说法正确的是 d 。 不知道C错哪请解说下
A)输入项可以为一实型常量,如scanf("%f",3.5);
B)只有格式控制,没有输入项,也能进行正确输入,如scanf("a=%d,b=%d”);
C)当输入一个实型数据时,格式控制部分应规定小数点后的位数,如scanf (“%4.2f",&f);
D)当输入数据时,必须指明变量的地址,如scanf(“%f",&f);
7、己知各变量的类型说明如下:
int i=8,k,a,b;
unsigned long w=55;
double x=1.42,y=5.2;
则以下符合c语言语法的表达式是_____。不知道 请解说下
A)a+=a-=(b=4)*(a=3) B)a=a*3=2
C)x%(-3) D)y=float(i)
8、已知ch是字符型变量,下面不正确的赋值语句是_d_____。
A)ch='a+b'; B) ch='\0'; C)ch='7'+'9'; D)ch=5+9
9、有输入语句:scanf("a=%d,b=%d,c=%d",&a,&b,&c),为使变量a的值为1.b为3,c为2,从键盘输入数据的正确形式应当是__b____。
A)132<回车>
B)1,3,2<回车>
C)a=l b=3c=2<回车>
D)a=1,b=3,c=2<回车>
10、逻辑运算符两侧运算对象的数据类型___b__。
A)只能是0或l
B)只能是0或非0正数
c)只能是整型或字符型数据
D)可以是任何类型的数据

1、c语言规定:在一个源程序中,main函数的位置 c
A)必须在最开始
B)必须在系统调用的库函数的后面
C)可以任意
D)必须在最后
2、下面程序的运行结果是_____d_。
main()
{struct cmplx {int x;
int y;
}cnum[2]={1,3,2,7};
printf(”%d\n”,cnum[0].y/cnum[0].x *cnum[l].x);
}
A)0 B)1 C)3 D)6
3、表达式18/4*2/8值的数据类型为_A____
A)int B)float C)double D)不确定
4、以下不正确的叙述是 D 。
A)在c程序中,逗号运算符的优先级最低
B)在C程序中,APH和aph是两个不同的变量
c)若a和b类型相同,在执行了赋值表达式a=b后b中的值将放入a中,而b中的值不变。
D)当从键盘输入数据时,对于整型变量只能输入整型数值.对于实型变量只能输入实型数值。
5、以下程序的运行结果是__d____。
#include "stdio.h”
main()
{struct date
{int year,month,day;
}today;
printf(“%d\n”,sizeof(struct date));
}
A)6 B)8 C)10 D)12
6、以下说法正确的是 d 。 不知道C错哪请解说下
A)输入项可以为一实型常量,如scanf("%f",3.5);
B)只有格式控制,没有输入项,也能进行正确输入,如scanf("a=%d,b=%d”);
C)当输入一个实型数据时,格式控制部分应规定小数点后的位数,如scanf (“%4.2f",&f);// 不应该指定位数,scanf不同于printf
D)当输入数据时,必须指明变量的地址,如scanf(“%f",&f);
7、己知各变量的类型说明如下:
int i=8,k,a,b;
unsigned long w=55;
double x=1.42,y=5.2;
则以下符合c语言语法的表达式是__a___。不知道 请解说下
A)a+=a-=(b=4)*(a=3) B)a=a*3=2 // a*3不能被赋值
C)x%(-3) // x是浮点型,不能进行%操作,只有整型可以 D)y=float(i) // 应该是 y=(float)i
8、已知ch是字符型变量,下面不正确的赋值语句是_a_____。 // 错误的是a,a+b是多个字符!
A)ch='a+b'; B) ch='\0'; C)ch='7'+'9'; D)ch=5+9
9、有输入语句:scanf("a=%d,b=%d,c=%d",&a,&b,&c),为使变量a的值为1.b为3,c为2,从键盘输入数据的正确形式应当是__d____。 // 答案是d,输入应该和scanf格式一致
A)132<回车>
B)1,3,2<回车>
C)a=l b=3c=2<回车>
D)a=1,b=3,c=2<回车>
10、逻辑运算符两侧运算对象的数据类型___D__。
A)只能是0或l
B)只能是0或非0正数
c)只能是整型或字符型数据
D)可以是任何类型的数据
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-12-20
1~6全对

6、以下说法正确的是 d 。 不知道C错哪请解说下
C)当输入一个实型数据时,格式控制部分应规定小数点后的位数,如scanf (“%4.2f",&f);
scanf里面不允许指定宽度和精度,%4.2f是错误的写法。

7、己知各变量的类型说明如下:
int i=8,k,a,b;
unsigned long w=55;
double x=1.42,y=5.2;
则以下符合c语言语法的表达式是_____。不知道 请解说下
A)a+=a-=(b=4)*(a=3) B)a=a*3=2
C)x%(-3) D)y=float(i)
只有A是正确的,B和C的错误很明显,D应该写y=(float)i

8题你错了,只有A是错误的,其它都对,但引号里面只允许一个字符。

9题应选D

10题应选D
第2个回答  2011-12-20
其他没啥问题的。第7题,选A,D应该都对的哦。B:a*3不能放在等式左边的,即左值;C double行不能做%
第3个回答  2011-12-20
1 B,
3 D,
6 C)当输入一个实型数据时,格式控制部分应规定小数点后的位数,如scanf (“%4.2f",&f);
当输入一个实型数据时,可以规定也可以不规定,他说死了
7、C,A中转换过来是a=a+a=a-4*3;B连等;D、不能把实数强制转换为浮点数
8 C,D赋值数字回解析成字符
10、D,逻辑运算没啥数据类型规定
第4个回答  2011-12-20
1- 5 你是做对了。。。

6 的 c 的错误在于,当输入一个实型数据时,格式控制部分应规定小数点后的位数,如scanf (“%4.2f",&f); 可以不规定其小数点后的位数, 这个是可以写可以不写的,

7 是:A)a+=a-=(b=4)*(a=3) 这个, += ,-= 只能出一次,出2次就错了。
B)a=a*3=2 a*3=2 这个是错的,不能这么写
C)x%(-3) % 这个运算,不能用负数,只能用正整数。
D)y=float(i) 这个是正确的。

8 的答案是 A , A 是错的, 其他的是对的。
9 是scanf 的一个格式控制问题, 要选 C
10 选 D , 在C语言里面类型很松 ,理论上应该是任何类型的数据 比如指针什么的 都是可以的