(C)一些错题

1、下列程序的输出结果是( A )

A .a

B . b

C.c

D.d

复制代码
# include < stdio . h >
 point ( char * p )
{
 p +=3;
 printf ("% c \ n ",* p );
}
 void main ()
{
 char b [4]=(' a ',' b ',' c ',' d '),* p = b ;
 point ( p );
 pr intf ("% c \ n ",* p );
 }

输出为:d

a

所以选A

2.设 float x ;,由键盘输入:12.45,能正确读入数据的输入语句是 A

A . scanf ("%5f",& x );

B . scanf ("%5d",& x ); 错在%d

C . scanf ("% f ", x ); 错在取地址符

D . scanf ("%5.2f",& x ); 错在输入时宽度不能为小数,而宽度可以

3.struct ex

{ intx ; float y; char z ;}

example;

则下面的叙述中不正确的是( B) 。

A. struct 结构体类型的关键字

B. example 是结构体类型名 错,是结构体变量的名字

C. x,y,z 都是结构体成员名

D.struct ex是结构体类型

4.假定x和y为double型,则表达式x=2,y=x+3/2的值是( D)。

A.3.500000

B.3

C.2.000000

D.3.000000

/两边为整型,所以3/2得1

5.以下合法的赋值语句是( B)。

A. x=y=100

B.d--; 等价于d=d-1;

C. x+y;

D. c=int(a+b); 错,应为(int)(a+b);

6.调用函数时,如果实参是简单变量,它与对应形参之间的数据传递方式是( B)。

A.地址传递

B.单向值传递

C. 由实参传给形参,再由形参传回实参

D.传递方式由用户指定

9.面程序的功能是输出1-100之朗每位数的乘积大于每位数的和的数。

复制代码
#include <stdio.h>

void main()
{
int n,k-l,s=0,m;

for(n=l;n<= 100;n++)
{

k=l;s=0;
_____________;
while(__________)
{
k*=m%10;
s+=m%10;
__________;
}
if(k>s) 
printf("%d",n);

答案:m=n; m!=0; m/=10;

相关推荐
晓蛋4 天前
c语言指的是什么意思
c语言·编译器·编程开发·集成开发环境·程序实例
倒头就睡的小比特4 天前
算法竞赛C++常用的STL
c++·算法
小羊没烦恼!4 天前
初探性能优化——2个月到4小时的性能提升
java·开发语言·windows·算法·c#
傲世仙尊4 天前
目录即文件-Ext文件系统收尾篇
linux·c语言
牵猫散步的鱼儿4 天前
重载、重写(覆盖)、重定义区别
c语言
猎头南楼4 天前
知识社区推荐系统实践:新用户冷启动与长短期兴趣建模的挑战 资深推荐算法工程师
人工智能·深度学习·算法·机器学习
phltxy4 天前
C 语言指针:从内存地址到灵活的数据访问
c语言
phltxy4 天前
C 语言中的数据存储:从类型到二进制位
c语言
旖旎夜光4 天前
力控面试题 01.01: 判定字符是否唯一(位运算) —— 题解
c++·学习·算法·leetcode·力控
wzdark4 天前
大规模并行计算中的负载均衡算法研究4
算法