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

相关推荐
阿崽meitoufa13 分钟前
JVM虚拟机:垃圾收集器和判断对象是否存活的算法
java·jvm·算法
ballball~~1 小时前
拉普拉斯金字塔
算法·机器学习
Cemtery1161 小时前
Day26 常见的降维算法
人工智能·python·算法·机器学习
楼田莉子2 小时前
Linux学习之磁盘与Ext系列文件
linux·运维·服务器·c语言·学习
StandbyTime2 小时前
C语言学习-菜鸟教程C经典100例-练习27
c语言
Ethan-D3 小时前
#每日一题19 回溯 + 全排列思想
java·开发语言·python·算法·leetcode
Benny_Tang3 小时前
题解:CF2164C Dungeon
c++·算法
仙俊红3 小时前
LeetCode174双周赛T3
数据结构·算法
橘颂TA3 小时前
【剑斩OFFER】算法的暴力美学——LeetCode 733 题:图像渲染
算法·leetcode·职场和发展
不穿格子的程序员3 小时前
从零开始写算法——回溯篇2:电话号码的字母组合 + 组合总和
算法·深度优先·回溯