(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;

相关推荐
happyprince28 分钟前
01-整体观-Codex全貌解读(源码)
算法·ai编程
俊基科技1 小时前
别自己写算法了,让这颗37.5毫米的模组替你“闭嘴干活”
神经网络·算法·硬件开发·ai降噪·语音模块·回音消除
_Narcissus_1 小时前
动态规划初探(含完整代码实现)
c语言·数据结构·c++·算法·动态规划·背包问题·最短路径
Cerman2 小时前
QEMU启动OVMF shell超时分析
c语言·windows·经验分享
世人万千丶2 小时前
鸿蒙项目实战 - 社区活动编排板:标签云布局算法与自动换行
学习·算法·华为·harmonyos·鸿蒙
zander2582 小时前
LeetCode 279. 完全平方数
算法·深度优先
典典分享指南3 小时前
VS Code Git 工作树:解锁多分支并行开发新体验
算法·决策树·逻辑回归·启发式算法
_Narcissus_3 小时前
枚举和模拟算法笔记
c语言·数据结构·c++·笔记·算法·模拟·枚举
天疆说3 小时前
策略的进化:从随心所欲到稳健前行
算法