下载此文档

C语言顺序结构作业(含解答).doc


文档分类:IT计算机 | 页数:约6页 举报非法文档有奖
1/6
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/6 下载此文档
文档列表 文档介绍
顺序结构作业解答(2)
一、选择题:
有以下程序:
#include<stdio.h>
void ma i n ()
( i nt a=10, b=20, c=30; pr intf (''%d\n", (a=50, b*a, c+a));
}
程序运行后输出结果是
a) 40 b) 50 c) 600 d)80
答案:d)
解答:(a=50, b*a, c+a)是一个逗号表达式,执行的顺序按排列顺序进行,整个表达式的值 是括号中最后一个表达式的值。计算过程: a=50,——> a的值为50;
a*b, ——> a的值仍然为50, b的值仍然为20; a*b的值为1000;
c+a, ——>2的值仍然为50, c的值仍然为30; c+c的值为30+50,即80;
有以下程序:
#include<stdio.h>
void ma i n ()
( i nt x;
x=x++;
pr intf("%d\n", x);
}
程序运行后输出结果是
a) 1 b) 0 c)编译出错 d)不错定
答案:d)
解答:x=x++;的执行顺序为:
首先取X的值,那么X的值是什么呢?在一对{ }之间定义的变量,称为局部变量, 系统对没有赋初值的局部变量不作任何处理,即,它的值是不确定的。
然后将取出的X值赋给“="左边的X,最后X的值增1;
进一步思考:如果上面的程序段改成:
#include<stdio.h>
void ma i n ()
{ int x=1;
x=x++;
pr intf("%d\n", x); }
程序运行后输出结果应该是什么值?
有以下程序:
#include<stdio. h>
void ma i n ()
( int x=1, y=5, z; z=x%y; z++; pr intf (''%d\n‘‘,z); }
程序运行后输出结果是
a) 1
b) 2
c) 5
d)0
答案:b)
解答:z=x%y;的执行结果为:1%5 (1除以5的余数)的值为1;将1赋给z;
z++; 的执行结果为:z的值增1;
有以下程序:
#include<stdio. h>
void ma i n ()
{
float x=1, y=5, z;
z=x%y;
z++;
printf (嗤d\n", z); }
程序运行后输出结果是
a) 2 b) 5
c)编译程序指出,程序第5行有错 d)编译程序指出,程序第5、6、8行有错
答案:c)
解答:1. %运算两个运算数必须是整数;
++运算的运算量必须是整型变量;但是因为在之前已经指出z的错误,所以这 里不再给出错误信息。
“printf (嗤d\n”,z);"的错误是用“%d"说明一个float类型量的输出格式, 输出结果是错误的,但语法检查,不提示错误信息。
有以下程序:
#include<stdio.h>
void ma i n ()
( int x; x=32768; pr intf ("%d\n'', x) ; }
程序运行后输出结果是
a) -32768 b) 32768 c) 0 d)编译出错
答案:a)
解答:1. 32768对应的二进制数为10000000 0

C语言顺序结构作业(含解答) 来自淘豆网www.taodocs.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数6
  • 收藏数0 收藏
  • 顶次数0
  • 上传人ttteee8
  • 文件大小90 KB
  • 时间2022-06-22