12)计算机能直接执行的程序是(B )。
A)源程序 B)目标程序 C)汇编程序 D)可执行程序
13)以下叙述中正确的是( D )
A)程序设计的任务就是编写程序代码并上机调试
B)程序设计的任务就是确定所用数据结构
C)程序设计的任务就是确定所用算法
D)以上三种说法都不完整
例年真题:
#include<stdio.h>
main()
{
Int a;
A=5; /*给A变量赋值5
A+=3; 再赋值后再加3*/
Printf(“%d”,a);
}
(11)以下叙述中正确的是( C )。
A)C 程序的基本组成单位是语句 B)C 程序中的每一行只能写一条语句
C)简单C 语句必须以分号结束 D)C 语句必须在一行内写完
(11)以下叙述中正确的是( C )
A)C程序中的注释只能出现在程序的开始位置和语句的后面
B)C程序书写格式严格,要求一行内只能写一个语句
C)C程序书写格式自由,一个语句可以写在多行上
D)用C语言编写的程序只能放在一个程序文件中
A)C程序中的注释只能出现在程序的开始位置和语句的后面
B)C程序书写格式严格,要求一行内只能写一个语句
C)C程序书写格式自由,一个语句可以写在多行上
D)用C语言编写的程序只能放在一个程序文件中
(12)以下选项中,能用作用户标识符的是( C )
A)void
B)8_8
C)_0_
D)unsigned
【解析】 A:关键字不可以B:不以数字开头C:正确 D:关键字
(13)以下选项中合法的标识符是( C )
A) 1-1 B)1—1 C)-11 D)1—
【解析】 A:不以数字开头,出现非法字符 - 而不是 _ B:不以数字开头,非法字符C:正确 D: 不以数字开头,出现非法字符
(14)以下选项中不合法的标识符是 ( C )
A)print B)FOR C)&a D)_00
A)print B)FOR C)&a D)_00
【解析】 C:出现非法字符&
(15)以下选项中,能用作数据常量的是 ( D )
A)o115 B) 0118 C)1.5e1.5 D) 115L
A)o115 B) 0118 C)1.5e1.5 D) 115L
【解析】 A:八进制以0开头而不是以o开头 B:八进制最大值为7,范围0-7 C:指数必须为整数 D: 长整型正确
(13)以下选项中不能作为C 语言合法常量的是( A )。
A)'cd' B)0.1e+6 C)"\a" D)'\011'
【解析】 A:字符常量只能有一个字符
(16)以下选项中不属于字符常量的是 ( B )
A)'C' B)"C" C)'\xCC0' D)'\072'
A)'C' B)"C" C)'\xCC0' D)'\072'
【解析】 B:字符常量以单引号作为标志,其为字符串
(14)表达式:4-(9)%2的值是( B )
A)0
B)3
C)4
D)5
【解析】(9)%2=1(取余),4-1=3
(14)设变量已正确定义并赋值,以下正确的表达式是 ( C )
A)x=y*5=x+z
B)int(15.8%5)
C)x=y+z+5,++y
D)x=25%5.0
【解析】 A:等号左边必须为变量,不可以为表达式,y*5是表达式 B:%只适用于整型变量 D: %只适用于整型变量
(15)若有定义语句:int x=10;,则表达式x-=x+x的值为( B )
A)-20
B)-10
C)0
D)10
【解析】 先算右边得20,x-=20,则10-20=-10
(14)设有定义:int x=2;,以下表达式中,值不为6的是 ( D )
A) x*=x+1 x=x*(x+1)
B) x++,2*x
C)x*=(1+x)
D)2*x,x+=2
源程序能直接执行吗【解析】 逗号表达式的最终结果看最后一个表达式,x+=2,结果为4
(17)若变量均已正确定义并赋值,以下合法的C语言赋值语句是 (A)
A)x=y==5;
B)x=n%2.5;
C)x+n=I
D)x=5=4+1;
【解析】等号左边必为变量,不能为常量或数字排除C 、D,%只能用于整数排除B
第三章 输入输出
习题讲解
(13)阅读以下程序
#include
main()
{ int case; float printF;
printf(“请输入2个数:”);
scanf(“%d %f”,&case,&pjrintF);
printf(“%d %f\n”,case,printF);
}
该程序编译时产生错误,其出错原因是( A )
A)定义语句出错,case是关键字,不能用作用户自定义标识符
B)定义语句出错,printF不能用作用户自定义标识符
C)定义语句无错,scanf不能作为输入函数使用
D)定义语句无错,printf不能输出case的值
(16)有以下程序
#include
main()
{ int a=1,b=0;
printf(“%d,”,b=a+b);
printf(“%d\n”,a=2*b);
}
程序运行后的输出结果是 ( D )
A)0,0
B)1,0
C)3,2
D)1,2
【解析】b=a+b即b=1,a=2*b,a=2
(15)程序段:int x=12;
double y=3.141593; printf(“%d%8.6f”,x,y);的输出结果是 ( A )
A)123.141593
B)12
3.141593
C)12,3.141593
D)12 3.141593
【解析】“%d%8.6f”原样输出,没有,也没有空格,所以x与y相连,小数总共8位,小数点之后6位
#include <stdio.h>
main()
{
double a=123.456;
printf("%6.2f",a);
}
结果:123.46
例题:
int x;
x=11/3;
int y=5;
printf("%%d,%%%d\n",x,y); 结果是:%d,%3
【解析】"%%d,%%%d\n"原样输出,%%d中第一个%为转义字符,不是输出占位符,所以原样输出%d,然后%%转义只输出一个%,%d\n只有一个占位符,所以只输出x的值为3
[3.5] 若变量已正确说明为int类型,要给a、b、c输入数据,以下正确的输入语句是( D )
A)read(a,b,c); B)scanf(“ %d%d%d” ,a,b,c);
C)scanf(“ %D%D%D” ,&a,%b,%c); D)scanf(“ %d%d%d”,&a,&b,&c);
【解析】scanf中赋值必须用&(取地址符),即将输入的字符放在指定位置中
[3.6] 若变量已正确说明为float类型,要通过以下赋值语句给a赋予10、b赋予22、c赋予33,以下不正确的输入形式是( B )
A)10 B)10.0,22.0,33.0 C)10.0 D)10 22
22 22.0 33.0 33
33
scanf(“ %f %f %f” ,&a,&b,&c);
【解析】输入时可以空格可以回车,但是不可以出现,
复合语句:多个语句被{}括起来,当成一条语句来执行。
空语句:最后的表示只有一个;
程序举例:
1。编写一个程序,从键盘上输入两个数字,让后让他们互换一下。
#include<stdio.h>
main()
{
int a,b;
printf("请输入两个数字:");
scanf("%2d%3d",&a,&b);
printf("qian:%d %d",a,b);
int c;
c=a,a=b,b=c;
printf("后:%d %d",a,b);
}
2。编写程序,对一个double型数据进行四舍五入运算。要求保留两位有效数字。
123.4567
两种算法:
(1)
#include <stdio.h>
main()
{
double k=1234.4567;
k+=0.005;
printf("%7.2f",k);
}
(2)
#include <stdio.h>
main()
{
double k=1234.4567;
k*=100;
k+=0.5;
k=(int)k;
k/=100;
printf("%7.2f",k);
}
3。编写程序,使从键盘中输入的三位数倒着输出。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论