一. 单选题(共100 题)
1. (单选题)C语言的源程序通常的扩展名是( )
A. .cppB. .cC. .objD. .exe
正确答案: B
2. (单选题)以下合法的数组定义是( )。
A. int a[]="Language";B. char a[]="C Program Language.";C. char a="C Program";D. int a[5]={0,1,2,3,4,5};
正确答案: B
3. (单选题)以下关于预处理命令的描述正确的是( )。
A. 预处理指令也是C语句。B. 一个包含文件中不可以再包含其他的文件。C. 在C源程序中,凡是行首以#标识的控制行都是预处理命令D. 预处理是指完成宏替换和文件包含中指定的文件的调用。
正确答案: C
4. (单选题)
以下程序运行时从键盘输入3.6,2.4,输出结果是( )。
#include
void main()
{
float x,y,z;
scanf("%f,%f",&x,&y);
z=x/y;
while(1)
{ if(fabs(z)>1.0)
{
x=y;
y=x;
z=x/y;
}
else break;
}
printf("%f",y);
}
A. 2.4B. 1.5C. 1.6D. 2
正确答案: A
5. (单选题)下列浮点数的形式表示错误的是( )
A. 10.6B. 12E2.0C. 100000D. .5
正确答案: B
6. (单选题)
以下程序的输出结果是( )。
#include
void main()
{
unsigned int a,b;
a=4|3;
b=4&3;
printf("%d,%d",a,b);
}
A. 1,1B. 43,0C. 0,7D. 7,0
正确答案: D
7. (单选题)表达式19&23的值是( )。
A. 0xf8B. 0x13C. 0x17D. 0xec
正确答案: D
8. (单选题)
以下程序的输出结果是( )。
#include
int func(int a,int b)
{
return(a+b);
}
void main()
{
int x=6,y=7,z=8,r;
r=func(func(x,y),z--);
printf("%d\n",r);
}
A. 20B. 31C. 15D. 21
正确答案: D
9. (单选题)
若有以下定义和语句:
union data
{
int i;
char c;
float f;
}a;
int n;
则以下语句正确的是( )。
A. a=5;B. printf("%d\n ",a.i);C. a={2, 'a',1.2};D. n=a;
正确答案: B
10. (单选题)一个C程序的执行是从( )
A. main函数开始,直到最后一个函数结束B. 第一个函数开始,直到最后一个函数结束C. main函数开始,直到main函数结束D. 第一条语句开始,直到最后一条语句结
正确答案: C
11. (单选题)以下数据类型中不是构造类型的是( )。
A. 共用型B. 结构型C. 数组型D. 指针型
正确答案: D
12. (单选题)表达式0x13|0x17的值是( )。
A. 0xC8B. 0xE8C. 0x13D. 0x17
正确答案: D
13. (单选题)
经过下述赋值后,变量x的数据类型是( )。
float x=21.0;
int y;
y=(int)x;
A. floatB. doubleC. intD. char
正确答案: A
14. (单选题)以下选项中不合法的实型常量是( )
A. -62000B. 0.123C. 5D. E3
正确答案: D
15. (单选题)有如下枚举类型定义:
enum language { English=6, French,Chinese=1,Japanse,Italian};
则枚举量Italian的值为( )。
A. 10B. 3C. 4D. 5
正确答案: B
16. (单选题)能正确定义整型变量a和b,并为它们赋初值5的语句是( )
A. a=b=5;B. int a=5,b=5;C. int a=b=5;D. int a,b=5;
正确答案: B
17. (单选题)
以下程序的输出结果为( )。
#include
#define POWER(x,y) pow(x,y)
#define TWO 2
#define ADD(y) y++
void main()
{
int a=3;
printf("%f\n",POWER(ADD(a),TWO-1));
}
A. 4.000000B. 3.000000C. 9.000000D. 6.000000
正确答案: B
18. (单选题)
设有以下宏定义:
#define N 4
#define Y(n) ((N+1)+1)
则执行语句:z=2*(N+Y(5+1)); 后,z的值为( )。
A. 54B. 出错C. 60D. 48
正确答案: C
19. (单选题)两个指针p和q,分别指向单链表的两个结点,p是q的前驱结点的条件是( )。
A. p->next==q->nextB. p->next==qC. q->next==pD. p==q
正确答案: B
20. (单选题)假设a、b均为字符数组,则以下正确的输入语句是( )。
A. gets("a");gets("b");B. gets(a,b);C. scanf("%s %s",&a,&b);D. scanf("%s %s",a,b);
正确答案: D
21. (单选题)只有当形参和与其对用的实参同名时才共享存储单元
A. 调用该函数时的实参的数据类型B. 任意指定的数据类型C. 函数返回值的数据类型D. 函数形参的数据类型
正确答案: C
22. (单选题)下列描述正确的是( )。
A. 两个字符串所包含的字符个数相同时,才能比较字符串B. 字符个数多的字符串比字符个数少的字符串大C. 字符串"That"小于字符串"The"D. 字符串 "STOP " 与 "STOP" 相等
正确答案: C
23. (单选题)若采用链式存储结构存储线性逻辑关系的数据元素时,要求内存中存储单元的地址( )。
A. 连续或不连续都可以B. 一定是不连续的C. 部分地址必须是连续的D. 必须是连续的
正确答案: A
24. (单选题)ypedef int integer;的作用是( )。
A. 定义了一个长整型变量B. 定义了一个整型变量C. 建立了一种新的数据类型D. 说明了一个新的数据类型说明符
正确答案: D
25. (单选题)
如果c是大于1的正整数,与以下程序段功能相等的赋值语句是( )。
s=a;
for(b=1;b<=c;b++)
s=s+1;
A. s=b+c;B. s=s+c;C. s=a+b;D. s=a+c;
正确答案: D
26. (单选题)下列叙述不正确的是( )。
A. 使用#include <文件名>的形式比使用#include "文件名"形式节省编译时间。B. #include <…>格式中的文件名之前可以包括路径。C. #include "C:\\user\\file.h"是正确的包含命令,它表示文件file.h存放在C盘的user目录下。D. #include命令可以包含一个含有函数定义的C语言源程序文件。
正确答案: C
27. (单选题)
下列程序段运行后的结果是( )。
#include
int main()
{
int a = 2, b = -1, c = 2;
if(a < b)
if(b < 0)
c = 0;
else c++;
printf("%d\n",c);
return 0;
}
A. 0B. 2C. 3D. 4
正确答案: B
28. (单选题)
以下程序的输出结果是( )。
#include
double f(int n)
{
int i;
double s=0;
for(i=1;i<=n;i++)
s+=1/i;
return s;
}
void main()
{
int i,m=3;
float a=0.0;
for(i=0;i<=m;i++)
a=a+f(i);
printf("%f\n",a);
}
A. 3.000000B. 5.5000000C. 4.000000D. 8.25
正确答案: A
29. (单选题)
以下程序的输出结果是( )。
#include
void main()
{
int x=1,y=0,a=0,b=0;
switch(x)
{
case 1:switch(y)
{
case 0:a++;break;
case 1:b++;break;
}
case 2:a++;b++;break;
}
printf("a=%d,b=%d",a,b);
}
A. a=1,b=1B. a=1,b=2C. a=2,b=1D. a=2,b=2
正确答案: C
30. (单选题)希望当num的值为奇数时,表达式的值为“真”;
num的值为偶数时,表达式的值为“假”。
则以下不能满足该要求的表达式是( )。
A. num%2==1B. !(num%2)C. !(num%2==0)D. num%2
正确答案: B
31. (单选题)
在双向链表中,在p所指向的结点前插入一个q所指向的结点,相应的操作语句是( )。
注:双向链表的结点结构为(prior,data,next)。
A. q->prior=p->prior;q->next=q;p->prior=q;p->prior=q;B. p->prior=q;p->prior->next=q;q->next=p;q->prior=p->prior;C. q->next=p;q->prior=p->prior;p->prior->next=q;p->prior=q;D. p->prior=q;q->next=p;p->prior->next=q;q->prior=q;
正确答案: C
32. (单选题)结构化程序设计由3种基本结构组成,3种基本结构组成的算法( )。
A. 可以完成任何复杂的任务B. 只能完成部分复杂的任务C. 能完成符合结构化的任务D. 只能完成一些简单的任务
正确答案: A
33. (单选题)C程序是由( )构成的
A. 若干过程B. 一个或多个函数C. 若干子程序D. 一个主程序与若干子程序
正确答案: B
34. (单选题)
以下程序正确的说法是( )。
#include
void main()
{
int x=0,y=0;
if(x=y) printf("*****\n");
else printf("#####\n");
}
A. 输出#####B. 有语法错误不能通过编译C. 可以通过编译,但不能通过连接,因此不能运行D. 输出*****
正确答案: A
35. (单选题)输入“12345,xyz<回车>”,下列程序的输出结果是( )。
#include
void main()
{
int a;
char c;
scanf("%3d%3c",&a,&c);
printf("%d,%c",a,c);
}
A. 12,4B. 12,34C. 123,4D. 1234
正确答案: C
36. (单选题)使用fseek()函数可以实现的操作是( )。
A. 改变文件位置指针的当前位置B. 文件的顺序读写C. 文件的随机读写D. 以上都不是
正确答案: A
37. (单选题)
若定义以下变量和数组:
int i;
int a[3][3]={1,2,3,4,5,6,7,8,9};
则下列语句的输出结果是( )。
for(i=0;i<3;i++)
printf("%d ",a[i][2-i]);
A. 3 5 7B. 1 5 9C. 3 6 9D. 1 4 7
正确答案: A
38. (单选题)下列叙述中,不正确的是( )
A. 分号是C语句的必要组成部分B. C语句的注释可以写在语句的后面C. 主函数的名字不一定用main表示D. 函数是C程序的基本单位
正确答案: C
39. (单选题)C语言中,while语句和do-while语句的主要区别是( )
A. do-while的循环体不能是复合语句B. do-while的循环体至少无条件执行一次C. while的循环控制条件比do-while的循环控制条件严格D. do-while允许从外部转到循环体内
正确答案: B
40. (单选题)若 x 为 float 型变量,则以下语句( )。x=213.82631; printf("%-4.2f\n",x);
A. 输出为213.83B. 输出格式描述符的域宽不够,不能输出C. 输出为213.82D. 输出为-213.82
正确答案: A
41. (单选题)构成C语言源程序的基本单位是( )
A. 过程B. 函数C. 子程序D. 命令
正确答案: B
42. (单选题)语句 if(x!=0) y=1;
else y=2;
与( )等价。
A. if(x) y=1;
else y=2;
B. if(x) y=2;
else y=1;
C. if(!x) y=1;
else y=2;
D. if(x=0) y=2;
else y=1;
正确答案: A
43. (单选题)已知int a[3][2]={3,2,1};则表达式“a[0][0]/a[0][1]/a[1][0]”的值是( )。
A. 0.16667B. 错误的表达式C. 1D. 0
正确答案: C
44. (单选题)
下列程序的输出结果是( )。
#include
void f(int x,int y,int z)
{
z=x+y;
}
void main()
{
int a;
f(5,6,a);
printf("%d\n",a);
}
A. 12B. 11C. 1D. 不确定的值
正确答案: D
45. (单选题)以下叙述不正确的是( )
A. 注释说明被计算机编译系统忽略B. 注释说明必须跟在“//”之后不能换行或者括在“/*”和“*/”之间且注释符必须配对使用C. 注释符“/”和“*”之间不能有空格D. 在C程序中,注释说明只能位于一条语句的后面
正确答案: D
46. (单选题)
有一条长阶梯,若每步跨2阶,则最后剩余1阶,若每步跨3阶,则最后剩余2阶,若每步跨5阶,则最后剩余4阶,若每步跨6阶,则最后剩余5阶,若每步跨7阶,最后才正好一阶不剩。请问,这条阶梯共有多少阶。
请补充while语句后的判断条件。
#include
void main()
{
int i=1;
while( )
++i;
printf("阶梯共有%d阶.\n",i);
}
A. !((i%2==1)&&(i%3==2)&&(i%5==4)&&(i%6==5)&&(i%7==1))B. !((i%2==0)&&(i%3==2)&&(i%5==4)&&(i%6==5)&&(i%7==0))C. !((i%2==1)&&(i%3==2)&&(i%5==4)&&(i%6==5)&&(i%7==0))D. (i%2==1)&&(i%3==2)&&(i%5==4)&&(i%6==5)&&(i%7==0)
正确答案: C
47. (单选题)在宏定义#define PI 3.1415926中,用宏名PI代替一个( )。
A. 字符串B. 单精度数C. 双精度数常量D. 常量
正确答案: A
48. (单选题)静态链表中的游标表示的是( )。
A. 逻辑上下一个结点在数组中的下标B. 内存地址C. 数组下标D. 逻辑上下一个结点的实际地址
正确答案: A
49. (单选题)头指针为H的循环单链表中尾结点r的特点是( )。
A. r=H->next;B. r=H;C. r->next=H;D. r->next= H->next;
正确答案: C
50. (单选题)
以下程序执行后的输出结果是( )。
#include
void main()
{
int i,j,s=0;
int a[4][4]={1,2,3,4,0,2,4,6,3,6,9,12,3,2,1,0};
for(j=0;j<4;j++)
{
i=j;
if(i>2) i=3-j;
s+=a[i][j];
}
printf("%d\n",s);
}
A. 18B. 16C. 12D. 11
正确答案: B
51. (单选题)
分析以下程序的运行结果。
#include
void main()
{
int k=2;
switch(k)
{
case 1:printf("%d\n",k++); break;
case 2:printf("%d ",k++);
case 3:printf("%d\n",k++); break;
case 4:printf("%d\n",k++);
default:printf("Full!\n");
}
}
A. 3 4B. 3 3C. 2 3D. 2 2
正确答案: C
52. (单选题)以下叙述正确的是( )。
A. 全局变量的作用域一定比局部变量的作用域范围大B. 静态类型变量的生存期贯穿于整个程序的运行期间C. 函数的形参都属于全局变量D. 未在定义语句中赋值的auto变量和static变量的初值都是随机值
正确答案: B
53. (单选题)使用“scanf("a=%d,b=%d",&a,&b)”,要使a,b的值均为25,正确的输入是( )。
A. a=25 b=25(空格分开)B. 25 25(空格分开)C. 25,25D. a=25,b=25
正确答案: D
54. (单选题)
有如下程序:有如下程序:
#include
void main()
{
char a,b,c,d;
scanf("%c,%c,%d,%d",&a,&b,&c,&d);
printf("%c, %c, %c, %c ",a,b,c,d);
}
若运行时从键盘输入:6,5,65,66<回车>,则输出结果是( )。
A. 6,5,A,BB. 6,5,65,66C. 6,5,6,5D. 6,5,6,6
正确答案: A
55. (单选题)在说明一个共用体变量时,系统分配给它的存储空间是( )。
A. 该共用体中所有成员变量所需存储空间的总和B. 该共用体中最后一个成员变量所需存储空间C. 该共用体中占用最大存储空间的成员变量所需存储空间 D. 该共用体中第一个成员变量所需存储空间
正确答案: C
56. (单选题)
以下程序的执行结果是( )。
#include
long ff(int n)
{
if (n>3)
return (ff(n-1)+ff(n-2));
else return(3);
}
void main()
{
printf("%d\n",ff(4));
}
A. 6B. 5C. 7D. 8
正确答案: A
57. (单选题)以下关于for语句的说法不正确的是( )
A. for循环是先判断表达式,后执行循环体语句B. for循环只能用于循环次数已经确定的情况C. for循环中,可以用break语句跳出循环体D. for循环体语句中,可以包含多条语句,但要用花括号括起来。
正确答案: B
58. (单选题)一个单链表中,在指针p所指向的结点之后插入指针s所指向的结点,正确的操作是( )。
A. p->next=s->next;p->next=s;B. p->next=s;p->next=s->next;C. p->next=s;s->next=p->next;D. s->next=p->next;p->next=s;
正确答案: D
59. (单选题)
下列程序段运行后x的值是( )。
int a = 0, b = 0, c = 0, x = 35;
if (!a) x--;
else if (b);
if (c) x = 3;
else x = 4;
A. 34B. 35C. 4D. 3
正确答案: C
60. (单选题)以下能对二维数组a进行正确初始化的是( )。
A. int a[][3]={{1,2,3},{4,5,6}};B. int a[2][4]={1,2,3},{{4,5},{6}};C. int a[2][]={{1,0,1},{5,2,3}};D. int a[][3]={{1,0,1},{},{1,1}};
正确答案: A
61. (单选题)
在C语言中,一维数组的定义方式为:类型说明符 数组名( )。
A. [常量表达式]B. [整型表达式]C. [整型常量]或[整型常量表达式]D. [整型常量]
正确答案: C
62. (单选题)已知int x=5,y=5,z=5;则执行语句x%=y+z;后,x的值是(
A. 6B. 1C. 0D. 5
正确答案: D
63. (单选题)以下关于typedef的叙述不正确的是( )。
A. 用typedef可以说明各种类型名,但不能用来定义变量B. 用typedef可以增加新类型C. 用typedef只是将已存在的类型用一个新的名称来代表D. 用typedef便于程序的通用和移植
正确答案: B
64. (单选题)
若定义int i; 则以下for语句的执行结果是( )。
for(i=1;i<10;i++)
{
if(i%3) i++;
++i;
printf("%d",i);
}
A. 35811B. 369C. 258D. 2468
正确答案: B
65. (单选题)下列合法的转义字符是( )
A. '\"'B. '\ee'C. '\018D. 'xab'
正确答案: A
66. (单选题)
以下程序段的输出结果是( )。
#include
void main()
{
int a=3;
do
{
printf("%d",a--);
}while(!a);
}
A. 32B. 不输出任何内容C. 3D. 321
正确答案: C
67. (单选题)
若定义int i;则以下循环语句的循环执行次数是( )。
for(i=2;i==0;)
printf("%d",i--);
A. 1B. 2C. 0D. 无限次
正确答案: C
68. (单选题)下面程序段的运行结果是 。x=y=0;while(x<15) y++,x+=++y;printf("%d,%d",y,x);
A. 20,7B. 6,12C. 20,8D. 8,20
正确答案: D
69. (单选题)在C语言中引用数组元素时,其数组下标的数据类型允许是( )。
A. 整型常量B. 整型常量或整型表达式C. 整型表达式D. 任何类型的表达式
正确答案: B
70. (单选题)若已定义x和y为double型变量,则表达式x=1,y=x+3/2的值是( )
A. 2B. 2.5C. 2.0D. 1
正确答案: C
71. (单选题)
以下程序的运行结果是( )。
#define S(x) 4*x*x+1
void main()
{
int i=6,j=8;
printf("%d",S(i+j));
}
A. 81B. 785C. 73D. 没有正确答案
正确答案: A
72. (单选题)下列属于C语言中合法标识符的是( )
A. ex-1B. _cookC. 951aD. if
正确答案: B
73. (单选题)在C程序中,main函数的位置( )
A. 可以任意B. 必须作为最后一个函数C. 必须作为第一个函数D. 必须放在它所调用的函数之后
正确答案: A
74. (单选题)
以下程序的输出结果是( )。
#include
#include
void main()
{
char str[10]="Ch\nina";
printf("%d",strlen(str));
}
A. 6B. 5C. 7D. 10
正确答案: A
75. (单选题)以下说法正确的是( )
A. 用do-while语句构成的循环,在while后的表达式为0时结束循环B. do-while语句构成的循环不能用其他语句构成的循环来代替C. do-while语句构成的循环只能用break语句退出D. 用do-while语句构成的循环,在while后的表达式为非0时结束循环
正确答案: A
76. (单选题)
以下程序的输出结果为( )。
#include
void main()
{
int a=30;
printf("%d",(a/3>0)?a/10:a%3);
}
A. 0B. 1C. 10D. 3
正确答案: D
77. (单选题)C语言属于( )
A. 机器语言B. 汇编语言C. 高级语言D. 低级语言
正确答案: C
78. (单选题)下面四组选项中,均是C语言关键字的选项是( )
A. auto enum includeB. switch typedef continueC. signed union scanfD. if struct type
正确答案: B
79. (单选题)以下说法不正确的是( )。
A. 在不同的函数中可以有相同名字的变量B. 在一个函数内的复合语句中定义的变量在本函数内有效C. 在一个函数内定义的变量只能在本函数内有效D. 函数的形式参数是局部变量
正确答案: B
80. (单选题)
以下程序的执行结果是( )。
#include
int k=1;
void fun(int m)
{
m+=k;
k+=m;
{
char k='B';
printf("%d,",k-'A');
}
printf("%d,%d",m,k);
}
void main()
{
int i=4;
fun(i);
printf("%d,%d",i,k);
}
A. 2,5,64,6B. 1,5,64,6C. 1,6,64,6D. 1,5,63,6
正确答案: B
81. (单选题)对于一个头指针为head的带头结点的单链表,判定该表为空表的条件是( )。
A. head==NULLB. head→next==NULLC. head→next==headD. head!=NULL
正确答案: B
82. (单选题)
以下程序运行时,输入的x值在( )范围时才会有输出结果。
#include
void main()
{
int x;
scanf("%d",&x);
if(x<5);
else if(x!=20)
printf("%d",x);
}
A. 大于等于5且不等于20的整数B. 不等于20的整数C. 小于5的整数D. 大于等于5且等于20的整数
正确答案: A
83. (单选题)表达式(k=3*2,k+4),k*3的值是( )
A. 18B. 14C. 30D. 10
正确答案: A
84. (单选题)在单链表中,增加头结点的目的是( )。
A. 链表判空、插入第一个结点以及删除第一个结点等运算方便B. 使单链表至少有一个结点C. 标志表中首结点的位置D. 说明该单链表是线性表的链式存储结构
正确答案: A
85. (单选题)已知函数的调用形式:fread(buffer,size,count,fp);其中的buffer代表的是( )。
A. 一个存储区,存放要读入的数据项。B. 一个指针,指向要存放读入数据的地址C. 一个整型变量,代表要读入的数据项总和。D. 一个文件指针,指向要读入的文件
正确答案: B
86. (单选题)以下程序段的输出结果是( )。
int n=10;
while(n>7)
{
printf("%d,",n);
n--;
}
A. 9,8,7,B. 9,8,7,6,C. 10,9,8,D. 10,9,8,7,
正确答案: C
87. (单选题)下列不合法的字符常量是( )
A. '2'B.
'ab'
C. '\n'D. '\101'
正确答案: B
88. (单选题)
若a为实型变量,则以下程序段的输出结果是( )。
a=2.389;
printf("%.2f",a);
A. 2.389B. 0.38C. 2.4D. 2.39
正确答案: D
89. (单选题)putchar( )函数可以向终端输出一个( )。
A. 字符串B. 字符或字符型变量值C. 实型变量值D. 浮点型变量值
正确答案: B
90. (单选题)下列条件语句中,功能与其他语句不同的是( )。
A. if(a==0) printf("%d\n",x);
else printf("%d\n",y);
B. if(a) printf("%d\n",x);
else printf("%d\n",y);
C. if(a==0) printf("%d\n",y);
else printf("%d\n",x);
D. if(a!=0) printf("%d\n",x);
else printf("%d\n",y);
正确答案: A
91. (单选题)
以下程序的输出结果是( )。
#include
int f(int a)
{
int b=0;
static int c=3;
a=c++,b++;
return a;
}
void main()
{
int a,i,t;
a=3;
for(i=0;i<3;i++)
t=f(a++);
printf("%d\n",t);
}
A. 3B. 5C. 4D. 6
正确答案: B
92. (单选题)以为了避免嵌套的条件分支语句if-else二义性,C语言规定,C程序中的else总是与( )组成配对关系。
A. 缩排位置相同的ifB. 在其之前未配对的最近的ifC. 在其之前未配对的ifD. 同一行上的if
正确答案: B
93. (单选题)以下可以实现“输入一个字符到变量ch”的语句是( )。
A. scanf("%c",ch);B. ch=getchar( );C. getchar(ch);
正确答案: B
94. (单选题)若变量x,y均定义为int型,z定义为double型,下列不合法的scanf语句是( )
A. scanf("%d%d%lf",&x,&y,&z);B. scanf("%d,%x,%lf",&x,&y,&z);C. scanf("%x,%o,%6.2f",&x,&y,&z);D. scanf("%x,%o",&x,&y);
正确答案: C
95. (单选题)
以下程序的输出结果是( )。
#include
void main()
{
int i=5;
for(;i<15;)
{
i++;
if(i%4==0) printf("%2d",i);
else continue;
}
}
A. 812B. 81216C. 1216D. 8
正确答案: A
96. (单选题)链表不具有的特点是( )。
A. 插入、删除不需要移动元素B. 可随机访问任意元素C. 所需空间与链表长度成正比D. 不必事先估计存储空间
正确答案: B
97. (单选题)设一个链表最常用的操作是在末尾插入结点和删除尾结点,则选用( )最节省时间。
A. 带尾指针的单循环链表B. 单循环链表C. 带头结点的双循环链表D. 单链表
正确答案: C
98. (单选题)执行语句“x=(a=5,b=a--)”后,x,a,b的值分别是( )
A. 5,4,4B. 5,5,4C. 5,4,5D. 4,5,4
正确答案: C
99. (单选题)以下说法正确的是( )。
A. 实参和与其对应的形参各占用独立的存储单元B. 实参和与其对应的形参共享一个存储单元C. 形参是虚拟的,不占用存储单元D. 只有当形参和与其对用的实参同名时才共享存储单元
正确答案: A
100. (单选题) 下列属于C语言关键字的是( )
A. typedefB. ENUMC. IntD. unien
正确答案: A
二. 判断题(共44 题)
1. (判断题)格式化输入函数scanf的返回值是输入数据的个数。
A. 对B. 错
正确答案: 对
2. (判断题)“#define”和“printf”都不是C语句。
A. 对B. 错
正确答案: 对
3. (判断题)凡在函数中未指定存储类别的变量,其隐含的存储类别是void类型。
A. 对B. 错
正确答案: 错
4. (判断题)if(a=5) 是允许的。
A. 对B. 错
正确答案: 对
5. (判断题)while、If、double均是C语言的关键字。
A. 对B. 错
正确答案: 错
6. (判断题)
以下程序的输出结果是n=4
#include
void main()
{
int i,n=0;
for(i=2;i<5;i++)
{
do {
if(i%3) continue;
n++;
} while(!i);
n++;
} printf("n=%d",n);
}
A. 对B. 错
正确答案: 对
7. (判断题)在C语言中,每个语句必须以分号结束。
A. 对B. 错
正确答案: 对
8. (判断题)宏替换不占用运行时间。
A. 对B. 错
正确答案: 对
9. (判断题)-6.2e4是不合法的实型常量。
A. 对B. 错
正确答案: 错
10. (判断题)程序调试是指对程序进行编译。
A. 对B. 错
正确答案: 错
11. (判断题)对 C 的源程序进行编译是指将C源程序翻译成目标程序。
A. 对B. 错
正确答案: 对
12. (判断题)以下程序中for循环的执行次数是6次。
#define M 2
#define N M+1
#define NUM (N+1)*N/2
void main()
{
int i;
for(i=1;i<=NUM;i++)
printf("%d\n",i);
}
A. 对B. 错
正确答案: 对
13. (判断题)当接受用户输入的含空格的字符串时,应使用getc函数。
A. 对B. 错
正确答案: 错
14. (判断题)在if语句的三种形式中,如果要想在满足条件时执行一组(多个)语句,则必须把这一组语句用{}括起来组成一个复合语句。
A. 对B. 错
正确答案: 对
15. (判断题)中的每个结点只能是一个简单类型,而链表的每个结点可以是一个复杂类型。
A. 对B. 错
正确答案: 错
16. (判断题)若x为int类型,则表达式x=1,x+5,x++的值是1。
A. 对B. 错
正确答案: 对
17. (判断题)为提高程序的运行速度,在函数中对于自动变量和形参可用register型的变量。
A. 对B. 错
正确答案: 对
18. (判断题)用于直接中断最内层循环的语句是break。
A. 对B. 错
正确答案: 对
19. (判断题)
下面程序段循环一次也不执行。
int x=10;
while(x=0)
x=x-1;
A. 对B. 错
正确答案: 对
20. (判断题)
执行以下程序段后,x的值为0,y的值为1。
int x, y;
if (x = 0) y = 0;
else y = 1;
A. 对B. 错
正确答案: 对
21. (判断题)for语句中的表达式可以部分或全部省略,但是两个分号不能省略。
A. 对B. 错
正确答案: 对
22. (判断题)构成数组的各个元素可以有不同的数据类型。
A. 对B. 错
正确答案: 错
23. (判断题)C语言本身没有输入输出语句。
A. 对B. 错
正确答案: 对
24. (判断题)一个字符数组就是一个字符串。
A. 对B. 错
正确答案: 错
25. (判断题)静态链表与动态链表在元素的插入、删除上类似,不需做元素的移动。
A. 对B. 错
正确答案: 对
26. (判断题)数组名实际是该数组首元素的起始地址。
A. 对B. 错
正确答案: 对
27. (判断题)
以下程序的输出结果是15。
#define T(x,y) (x)<(y)?(x):(y)
void main()
{
int i=10,j=15,k;
k=10*T(i,j);
printf("%d",k);
}
A. 对B. 错
正确答案: 对
28. (判断题)在C语言的源程序函数中,函数体中可以没有任何语句。
A. 对B. 错
正确答案: 对
29. (判断题)8E2是不合法的整型常量。
A. 对B. 错
正确答案: 对
30. (判断题)数组适合于随机存储,而链表不适合。
A. 对B. 错
正确答案: 对
31. (判断题)语句while(!y)中的!y等价于y!=0。
A. 对B. 错
正确答案: 错
32. (判断题)若调用一个函数,且此函数中没有return语句,则该函数没有返回值 。
A. 对B. 错
正确答案: 错
33. (判断题)数组比链表的插入与删除运算更方便。
A. 对B. 错
正确答案: 错
34. (判断题)调用strlen("abcd\0ed\0g")的返回值为4。
A. 对B. 错
正确答案: 对
35. (判断题)
if-else语句的一般形式如下,若表达式的值为“真”,则执行语句1;否则,就执行语句2。
if (表达式) 语句1
else 语句2
A. 对B. 错
正确答案: 对
36. (判断题)
下列函数调用语句中含有5个实参。
fun((a1,a2),(a3,a4,a5));
A. 对B. 错
正确答案: 错
37. (判断题)C语言允许直接访问内存地址。
A. 对B. 错
正确答案: 对
38. (判断题)1C_fun是合法的标识符。
A. 对B. 错
正确答案: 错
39. (判断题)
C语言的每条可执行语句最终都将被转换成二进制的机器指令。
A. 对B. 错
正确答案: 错
40. (判断题)C语言中的函数可以嵌套调用,但不可以嵌套定义。
A. 对B. 错
正确答案: 对
41. (判断题)
if-else语句的一般形式如下,其中的语句1、语句2只能是一条语句。
if (表达式) 语句1
else 语句2
A. 对B. 错
正确答案: 错
42. (判断题)若有int x=8,y=5,z;则执行语句“z=x/y+0.4”后,z的值为1。
A. 对B. 错
正确答案: 对
43. (判断题)已知带头结点的双向循环链表L,判断其为空表的条件是L->next==L && L->prior==L。
A. 对B. 错
正确答案: 对
44. (判断题)此条枚举类型的定义是正确的。
enum a{one=9,two=-1,three};
A. 对B. 错
正确答案: 对
三. 简答题(共23 题)
1. (简答题)
进制转换。
题目描述
题目内容:编写程序,输入一个八进制数(不超过3位),输出该数对应的十进制数。
输入样例:17
输出样例:17(8)=15(10)
输入样例:111
输出样例:111(8)=73(10)
测试用例
用例1
分数: 10
错误提示:
用例2
分数: 10
错误提示:
题目运行时间限制: 500ms
题目运行内存限制: 32000kb
我的答案:
正确答案:
#include
int main()
{
int num,ge,shi,bai;
scanf("%d",&num);
bai=num/100;
shi=num%100/10;
ge=num%10;
printf("%d(8)=%d(10)",num,ge+shi*8+bai*8*8);
return 0;
}
2. (简答题)
时间换算。题目描述
题目内容:编写程序,实现输入的时间,屏幕显示一秒后的时间。显示格式为HH:MM:SS。
程序需要处理以下三种特殊情况:
(1)若秒数加1后为60,则秒数恢复到0,分钟数增加1;
(2)若分钟数加1后为60,则分钟数恢复到0,小时数增加1;
(3)若小时数加1后为24,则小时数恢复到0。
输入样例:18:1:2
输出样例:18:01:03
输入样例:20:12:59
输出样例:20:13:00
输入样例:23:59:59
输出样例:00:00:00
测试用例
用例1
分数: 10
错误提示:
用例2
分数: 10
错误提示:
用例3
分数: 10
错误提示:
题目运行时间限制: 500ms
题目运行内存限制: 32000kb
我的答案:
正确答案:
#include
int main()
{
int HH, MM, SS;
scanf("%d:%d:%d",&HH,&MM,&SS);
SS++;
if (SS >= 60){
SS = 0;
MM ++;
}
if (MM >= 60){
MM = 0;
HH ++;
}
if (HH >= 24){
HH = 0;
MM = 0;
SS = 0;
}
printf("%02d:%02d:%02d\n",HH,MM,SS);
}
3. (简答题)
组合数。题目内容:本题要求编写程序,根据公式Cnm= 算出从n个不同元素中取出m个元素(m≤n)的组合数。建议定义和调用函数fact(n)计算n!,其中n的类型是int,函数类型是double。
输入格式:输入在一行中给出两个正整数m和n(m≤n),以英文,分隔。
输出格式:输出组合数计算结果,题目保证结果在类型范围内。
输入样例:2,7
输出样例:21
时间限制:500ms内存限制:32000kb
我的答案:
正确答案:
#include
double factorial(int n);
int main(){
int n,m,result;
scanf("%d,%d", &m, &n);
result=factorial(n)/(factorial(m)*factorial(n-m));
printf("%d", result);
return 0;
}
double factorial(int n){
if(n<=1)
return 1;
return n*factorial(n-1);
}
4. (简答题)
爬楼梯。题目内容:可爱的小明特别喜欢爬楼梯,他有的时候一次爬一个台阶,有的时候一次爬两个台阶,有的时候一次爬三个台阶。如果这个楼梯有n个台阶,小明一共有多少种爬法呢?n值从键盘输入。
输入格式:输入一个整数n,(1<=n<46)。
输出格式:输出当楼梯阶数是n时的上楼方式总数。
输入样例:1
输出样例:1
输入样例:4
输出样例:7
输入样例:24
输出样例:1389537
时间限制:500ms内存限制:32000kb
我的答案:
正确答案:
#include
int f(int n){
n++;
int i;
int table[n];
for(i=0;i table[i]=0; table[1]=1; table[2]=2; table[3]=4; for(i=4;i table[i]=table[i-1]+table[i-2]+table[i-3]; } return table[n-1]; } int main(){ int n; scanf("%d", &n); if(n>=1&&n<46){ printf("%d",f(n)); } return 0; } 5. (简答题) 求解梯形的面积题目描述 题目内容:从键盘上输入一个梯形的上底a、下底b和高h,输出梯形的面积。 输入样例:2,4,3 输出样例:9.000000 输入样例:2.4,2.6,3.8 输出样例:9.500000 测试用例 用例1 分数: 10 错误提示: 用例2 分数: 10 错误提示: 题目运行时间限制: 500ms 题目运行内存限制: 32000kb 我的答案: 正确答案: #include int main() { float width_up,width_butt,height; float result; scanf("%f,%f,%f",&width_up,&width_butt,&height); result = ((width_up + width_butt) * height)/2; printf("%f",result); } 6. (简答题) 追查车号。 题目描述 题目内容:一辆卡车违反交通规则,撞人逃逸。现场三人目击事件,但都没有记住车号,只记下车的一些特征。甲说:牌照的前两位数字是相同的;乙说:牌照的后两位数字是相同的;丙是位数学家,他说:四位的车号正好是一个整数的平方。请根据以上线索求出车号。 输出格式:The number is ****。 测试用例 用例1 分数: 20 错误提示: 题目运行时间限制: 500ms 题目运行内存限制: 32000kb 我的答案: 正确答案: #include #include int main(){ int i,j,k,l; for(i=0;i<10;i++){ j=i; for(k=0;k<10;k++){ l=k; if(i==k){ continue; }else{ double nums=sqrt(i*1000+j*100+k*10+l); if((int)nums==nums){ int plateNum=(i*1000+j*100+k*10+l); printf("The number is %d.",plateNum); break; }else{ continue; } } } } return 0; } 7. (简答题) 正向建立单链表。题目描述 题目内容:输入若干个正整数(输入-1为结束标志),要求按输入数据的逆序建立单链表并输出。 输入格式:一行内输入若干个正整数,之间用空格隔开,并以-1结束。 输出格式:一行内输出建立的单链表数据结果,之间用两个分隔符 -- 隔开,结束标志-1不输出。 输入样例:2 4 6 8 10 -1 输出样例:--2--4--6--8--10 测试用例 用例1 分数: 25 错误提示: 题目运行时间限制: 500ms 题目运行内存限制: 32000kb 我的答案: 正确答案: #include "stdio.h" #include "stdlib.h" typedef struct Node { int data; struct Node *next; } LList; int main() { LList * header = NULL; struct Node * p; while (1) { int input; scanf("%d", &input); if (input == -1) break; if (!header) { header = (struct Node *)malloc(sizeof(struct Node)); p = header; header->data = input; header->next = NULL; } else { p->next = (struct Node *)malloc(sizeof(struct Node)); p = p->next; p->data = input; p->next = NULL; } } p = header; struct Node * preP = NULL; p = header; int i = 0; while (p) { printf("--%d", p->data); p = p->next; } return 0; } 8. (简答题) 最大公约数与最小公倍数。题目内容:编写两个函数,分别求两个整数的最大公约数和最小公倍数,并用主函数调用这两个函数,然后输出结果。两个整数由键盘输入。约定最大公约数为正整数,两数里有负的则最小公倍数就为负的。 输入格式:输入均不为0的整数n和m(n与m的乘积还在整数范围内)(两数之间用英文,隔开) 输出格式:输出这两个整数的最大公约数和最小公倍数(两结果之间用英文,隔开) 输入样例:24,36 输出样例:12,72 输入样例:-48,128 输出样例:16,-384 时间限制:500ms内存限制:32000kb 我的答案: 正确答案: #include int gcd(int a,int b) { if(a<0) a=-a; if(b<0) b=-b; return b==0?a:gcd(b,a%b); } int lcm(int a,int b,int p) { return (a*b)/p; } int main() { int a,b; int p,q; scanf("%d,%d",&a,&b); p = gcd(a,b); q = lcm(a,b,p); printf("%d,%d",p,q); } 9. (简答题) 2.特征数判断。 题目内容:编写程序,判断输入的正整数是否既是5又是7的整倍数。 输入样例:-9 输出样例:Data error! 输入样例:33 输出样例:No! 输入样例:35 输出样例:Yes! 输入样例:0 输出样例:Data error! 测试用例 用例1 分数: 5 错误提示: 用例2 分数: 10 错误提示: 用例3 分数: 10 错误提示: 用例4 分数: 5 错误提示: 题目运行时间限制: 500ms 题目运行内存限制: 32000kb 我的答案: 正确答案: 10. (简答题) 三天打鱼两天晒网。题目描述 题目内容:中国有句俗语:“三天打鱼两天晒网”,某人从1990年1月1日起开始“三天打鱼两天晒网”。问这个人在以后的某一天是在“打鱼”还是在“晒网”? 输入样例:1990-1-3 输出样例:他在打鱼 输入样例:2018-11-11 输出样例:他在晒网 测试用例 用例1 分数: 15 错误提示: 用例2 分数: 15 错误提示: 题目运行时间限制: 500ms 题目运行内存限制: 32000kb 我的答案: 正确答案: #include struct date{ int year; int month; int day; }; int days(struct date day); int main() { struct date today,term; int yearday=0,year,day; scanf("%d-%d-%d",&today.year,&today.month,&today.day); term.month=12; term.day=31; for(yearday=0,year=1990;year { term.year=year; yearday+=days(term); } yearday%=5; yearday+=days(today); day=yearday%5; if(day>0&&day<4) printf("他在打鱼"); else printf("他在晒网"); } int days(struct date day) { static int day_tab[2][13]= {{0,31,28,31,30,31,30,31,31,30,31,30,31}, {0,31,29,31,30,31,30,31,31,30,31,30,31}, }; int i,lp; lp=(day.year%4==0&&day.year%100!=0)||(day.year%400==0); for(i=1;i day.day+=day_tab[lp][i]; return day.day; } 11. (简答题) 图形打印。 题目描述 题目内容:编写程序,打印以下图形(行n的值由键盘输入)。 ******* ****** ***** **** *** ** * 输入样例:5 输出样例: ***** *** ** * 输入样例:9 输出样例: ********* ******** ******* ****** ***** **** *** * 测试用例 用例1 分数: 10 错误提示: 用例2 分数: 10 错误提示: 题目运行时间限制: 500ms 题目运行内存限制: 32000kb 我的答案: 正确答案: #include #include int main() { int a,i,j,k; scanf("%d",&a); for(j=1;j<=a;j++) { if(j!=1) for (i=1;i<=j-1;i++) printf(" "); for(k=1;k<=a-j+1;k++) printf("*"); printf("\n"); } getch(); return 0; } 12. (简答题) 逆序打印。题目描述 题目内容:输入一个三位的正整数,按逆序打印出该数的各位数字。输入样例:369 输出样例:963 输入样例:680 输出样例:086 测试用例 用例1 分数: 10 错误提示: 用例2 分数: 10 错误提示: 题目运行时间限制: 500ms 题目运行内存限制: 32000kb 我的答案: 正确答案: #include int main() { int num; cin>>num; while(num>0) { cout< num/=10; } } 13. (简答题) 100以内的素数。题目内容:求100以内的全部素数,每行输出10个。素数就是只能被1和自身整除的正整数,1不是素数,2是素数。要求定义和调用函数prime(m)判断m是否为素数,当m为素数时返回1,否则返回0。 输入格式:没有输入数据。 输出格式:输出100以内的素数,每行输出10个 提示:可使用输出语句printf("%6d",m);来控制素数之间的输出间隔。 输出样例: 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 时间限制:500ms内存限制:32000kb 我的答案: 正确答案: #include #include int prime(int m) { int i; if(m<2) return 0; if(m==2) return 1; for (i=2; i<=(int)sqrt((double)m); i++) if (m%i==0) return 0; return 1; } int main() { int m,j=0; for (m=1; m<=100; m++) if(prime(m)) { printf("%6d",m); j++; if(j%10==0) printf("\n"); } return 0; } 14. (简答题) 特征四位数。 题目描述 题目内容:已知四位数3025具有一个特殊性质:它的前两位数字30与后两位数字25之和是55,而55的平方正好等于3025。编程找出所有具有这种性质的四位数。 输出格式:每一个四位数自占一行 测试用例 用例1 分数: 20 错误提示: 题目运行时间限制: 500ms 题目运行内存限制: 32000kb 我的答案: 正确答案: #include int main() { int i,n,m; for(i=1000;i<10000;i++) { m=i%100; n=i/100; if((n+m)*(n+m)==i) printf("%d\n",i); } return 0; } 15. (简答题) 三色球题目描述 题目内容:一个袋子中有红、黄、兰3个球,依次从袋子中拿出所有的球。编写一个程序,输出所有的拿法。 输出格式:每一种方案自成一行,方案中球的颜色分别用red,yellow,blue来表示,中间用英文句号 . 隔开。 输出样例:其中的两种方案输出结果 red.yellow.blue. red.blue.yellow. 测试用例 用例1 分数: 30 错误提示: 题目运行时间限制: 500ms 题目运行内存限制: 32000kb 我的答案: 正确答案: #include int main() { printf("red.yellow.blue.\n"); printf("red.blue.yellow.\n"); printf("yellow.red.blue.\n"); printf("yellow.blue.red.\n"); printf("blue.red.yellow.\n"); printf("blue.yellow.red.\n"); } 16. (简答题) 逆置单链表。题目描述 题目内容:一个单链表L=(a1 , a2 , … , an-1 , an),其逆单链表定义为L’=( an , an-1 , … , a2 , a1),编写算法将单链表L逆置,要求逆单链表仍占用原单链表的空间。 输入格式:一行内输入原单链表中的数据(若干个正整数,之间用空格隔开,并以-1结束) 输出格式:一行内输出建立的原单链表数据结果,之间用两个分隔符 -- 隔开,结束标志-1不输出。 下一行内输出逆置后的单链表数据结果,之间用两个分隔符 -- 隔开。 输入样例:2 4 6 8 10 -1 输出样例:--2--4--6--8--10 --10--8--6--4--2 测试用例 用例1 分数: 30 错误提示: 题目运行时间限制: 500ms 题目运行内存限制: 32000kb 我的答案: 正确答案: #include #include typedef struct node { int data; struct node *next; }Node; //创建链表 Node *CreatList(void) { int val, i; Node *phead, *p, *q; phead = NULL; while(1) { scanf("%d", &val); if(val==-1) break; p = (Node *)malloc(sizeof(Node)); p->data = val; if(NULL == phead) q = phead = p; else q->next = p; q = p; } p->next = NULL; return phead; } //链表的逆置 Node *ReverseList(Node *phead) { Node *p, *q, *r; p = phead; q=r=NULL; while(p) { q = p->next; p->next = r; r = p; p = q; } return r; } //输出链表 void ShowList(Node *phead) { Node *p; p = phead; while(p) 17. (简答题) 天数判断。 题目描述 题目内容:编写程序,从键盘上输入年份和月份,计算并输出这一年的这一月共有多少天。 输入样例:2019-3 输出样例:31 输入样例:2019-9 输出样例:30 输入样例:2019-2 输出样例:28 输入样例:2004-2 输出样例:29 测试用例 用例1 分数: 5 错误提示: 用例2 分数: 5 错误提示: 用例3 分数: 10 错误提示: 用例4 分数: 10 错误提示: 题目运行时间限制: 500ms 题目运行内存限制: 32000kb 我的答案: 正确答案: #include int main() { int m,y; int days[12] = {31, 28, 31,30,31,30,31,31,30,31,30,31}; scanf("%d-%d",&y,&m); if(m == 2) { if(y%400==0 || (y%4==0 && y%100!=0))//闰年。 printf("29\n"); else printf("28\n"); } else printf("%d\n", days[m-1]); return 0; } 18. (简答题) 求和S。 题目描述 题目内容:求s=1+(1+2)+…+(1+2+3+…+n)的值,其中n由键盘输入。 输入样例:3 输出样例:10 输入样例:8 输出样例:120 输入样例:0 输出样例:Error! 输入样例:-1 输出样例:Error! 测试用例 用例1 分数: 10 错误提示: 用例2 分数: 10 错误提示: 用例3 分数: 5 错误提示: 用例4 分数: 5 错误提示: 题目运行时间限制: 500ms 题目运行内存限制: 32000kb 我的答案: 正确答案: 19. (简答题) 链表合并。题目描述 题目内容:已知单链表LA=(a1,a2,…,am)和LB=(b1,b2,…,bn),编写程序按以下规则将它们合并成一个单链表LC,要求新表 LC利用原表的存储空间。 LC=(a1,b1,…,am,bm,bm+1,…,bn),m<=n 或者 LC=(a1,b1,…,bn,an,an+1,…,am),m>n 输入格式:一行内输入单链表LA中的数据(若干个正整数,之间用空格隔开,并以-1结束) 一行内输入单链表LB的数据(若干个正整数,之间用空格隔开,并以-1结束) 输出格式:一行内输出合并后单链表LC的数据结果,之间用两个分隔符 -- 隔开,结束标志-1不输出。 输入样例:1 3 5 7 -1 2 4 6 -1 输出样例:--1--2--3--4--5--6--7 测试用例 用例1 分数: 20 错误提示: 用例2 分数: 20 错误提示: 题目运行时间限制: 500ms 题目运行内存限制: 32000kb 我的答案: 正确答案: #include #include typedef int ElemType; typedef struct linknode { ElemType data; struct linknode *next; }LNode, *LinkList; //创建链表 LinkList Create(void) { LinkList head,current; ElemType d; LNode *s; current=head=(LinkList)malloc (sizeof(LNode)); //head节点 current->data=0; while (1) { scanf("%d",&d); if(d==-1) break; s=(LinkList)malloc (sizeof(LNode)); //为新节点分配内存空间 s->data=d; current->next=s; current=s; d=getchar(); } current->next=NULL; //最后尾指针为NULL return head; } //输出链表 void List(LinkList L) { LinkList p; p=L->next; // while (p!=NULL) { printf ("--%d",p->data); p=p->next; } } //合并链表 void CoalitionLinkList(LinkList L1,LinkList L2) { LinkList p1=L1->next; LinkList p2=L2->next; 20. (简答题) 求解矩形的面积 题目描述 题目内容:编写一个程序,从键盘读入一个矩形的两个边的值(整数),输出矩形面积。输入样例:3,5 输出样例:15 测试用例 用例1 分数: 10 错误提示: 题目运行时间限制: 500ms 题目运行内存限制: 32000kb 我的答案: 正确答案: #include int main() { int width,height; int result; scanf("%d,%d",&width,&height); result = width*height; printf("%d",result); } 21. (简答题) 星期推算。 题目描述 题目内容:假设今天是星期日,编写一个程序,求2019天后是星期几。 输出样例:星期*(星期一、星期二、星期三、星期四、星期五、星期六、星期日) 测试用例 用例1 分数: 20 错误提示: 题目运行时间限制: 500ms 题目运行内存限制: 32000kb 我的答案: 正确答案: #include int main() { int a; int b = 2019; a = (b % 7); if(a == 0) printf("星期日"); if(a == 1) printf("星期一"); if(a == 2) printf("星期二"); if(a == 3) printf("星期三"); if(a == 4) printf("星期四"); if(a == 5) printf("星期五"); if(a == 6) printf("星期六"); return 0; } 22. (简答题) 温度转换。题目描述 题目内容:编写程序,计算并输出华氏温度为80F所对应的摄氏温度C。 转换公式为:C=5*(F-32)/9 输出样例:**.******测试用例 用例1 分数: 20 错误提示: 题目运行时间限制: 500ms 题目运行内存限制: 32000kb 我的答案: 正确答案: #include int main() { float f,c; cin>>f; c = 5*(f-32)/9; cout< } 23. (简答题) 时刻转换。 题目描述 题目内容:编写一个程序,从键盘输入某个分钟数,将其转换成用小时和分钟表示,并将表示结果输出。 输入样例:320 输出样例:320(m)=5(h):20(m) 输入样例:68 输出样例:68(m)=1(h):08(m) 输入样例:55 输出样例:55(m)=0(h):55(m) 测试用例 用例1 分数: 10 错误提示: 用例2 分数: 5 错误提示: 用例3 分数: 5 错误提示: 题目运行时间限制: 500ms 题目运行内存限制: 32000kb 我的答案: 正确答案: #include int main(){ int num; int a,b; scanf("%d", &num); a=num/60; b=num%60; printf("%d(m)=%d(h):%d(m)",num,a,b); } 推荐阅读
发表评论