C课后练习题答案

合集下载

《C语言程序设计》练习题及答案

《C语言程序设计》练习题及答案

《C语言程序设计》练习题及答案1. 单选题1. 设有定义:int n=0,*p=&n,**q=&p,则下列选项中正确的赋值语句是A. p=1;B. *q=2;C. q=p;D. *p=5;正确答案:D2. 设有int x=11;则表达式(x++*1/3)的值是A. 3B. 4C. 11D. 12正确答案:A3. 下面程序的输出结果是main(){ int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a; printf("%d\n",*(p+2));}A. 3B. 4C. 1D. 2正确答案:A4. sizeof(float)是A. 一个双精度型表达式B. 一个整型表达式C. 一种函数调用D. 一个不合法的表达式正确答案:B5. 在16位C编译系统上,若定义long a;,则能给a赋40000的正确语句是A. a=20000+20000;B. a=4000*10;C. a=30000+10000;D. a=4000L*10L正确答案:D6. 请选出以下语句的输出结果printf("%d\n",strlen("\t\"\065\xff\n"));A. 5B. 14C. 8D. 输出项不合法,无正常输出正确答案:A7. 若x,i,j和k都是int型变量,则计算表达式x=(i=4,j=16,k=32)后,x的值为A. 4B. 16C. 32D. 52正确答案:C8. 下面能正确进行字符串赋值操作的是A. char s[5]={"ABCDE"};B. char s[5]={ ′A′, ′B′, ′C′, ′D′, ′E′};C. char *s;s="ABCDE";D. char *s;char a; scanf("%s",&s);正确答案:C9.以下程序的输出结果是#include "stdio.h"void reverse(int a[],int n){int i,t;for(i=0;i<n/2;i++){t=a[i];a[i]=a[n-1-i];a[n-1-i]=t;}}main(){int b[10]={1,2,3,4,5,6,7,8,9,10};int i,s=0;reverse(b,8);for(i=6;i<10;i++) s+=b[i];printf("%d\n",s);}A. 22B. 10C. 34D. 30正确答案:A10. 以下不正确的叙述是A. 在C程序中,逗号运算符的优先级最低B. 在C程序中,APH和aph是两个不同的变量C. 若a和b类型相同,在计算了赋值表达式a=b后b中的值将放入a中,而b中的值不变D. 当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值正确答案:D2. 多选题11. 以下______是正确的转义字符。

C语言程序设计实例教程 第3版习题答案U1

C语言程序设计实例教程 第3版习题答案U1

1.3 课后习题1.3.1 项目练习一.练习目的1.进行简单程序的编写;2.进一步熟悉C语言的编程环境;3.进一步巩固C语言程序的建立、编译、执行过程。

二.练习内容1.编程输出一行汉字“我坚信:我一定能学好C语言!”。

#include "stdio.h"main(){printf("我坚信:我一定能学好C语言!");getchar();}2.用自然语言描述、画N-S图、画传统流程图三种方法来描述求1+2+3+…n和值的算法。

自然语言描述:先输入n 的值定义一个变量i,定义一个变量sum,用于存放每次累计的和值I 从0开始,累加到sum中累加到n的值,结束输出sum的值N-S图传统流程图:开始sum=0i=0输入n的值i=i+1sum=sum*ii<=n是输出sum的值结束1.3.2 练习题一.选择题1.下列有关C语言的说法正确的是( C )。

(A)机器语言(B)只适合于编写应用软件(C)高级语言(D)只适合于编写系统软件2.下列说法中,不属于良好程序设计风格要求的是( C )。

(A)程序中要有必要的注释(B)程序应简单、可读性好(C)程序的效率第一,清晰第二(D)输入数据前要有提示信息3.用C语言编写的代码是( A )。

(A)经过编译解释才能执行(B)可以立即执行(C)是一个源程序(D)经过编译立刻执行4.下列语句说法正确的是( C )。

(A)语句必须从第一行开始书写(B)一个语句只能写在同一行上(C)一个语句可以书写在多行上(D)一个语句不得多于80个字符5.一个程序总是从( B )位置开始执行。

(A)第一个函数(B)main()(C)程序的第一行(D)第一条执行语句6.下面对C语言的特点,说法不正确的是( B )。

(A)C语言是一种结构化模块化的程序设计语言(B)C语言程序的可移植性较差(C)C语言兼有高级语言和低级语言的双重特点(D)C语言既可以用来编写应用程序,又可以用来编写系统软件7.下列不是C语言特点的是( D )。

C语言课后习题答案

C语言课后习题答案
#include <stdio.h>
void main()
{
int i=2,n,c;
c=0;
printf("守形数有:");
while(i<1001)
{
n=i*i;
if(n%10==i)
{
printf("%5d",i);
c++;
}
else if(n%100==i)
{
printf("%5d",i);
c++;
int main()
{
int i=0;
int nums[10];
int sum = 0;
int product = 1;
int sum_of_square = 0;
for( i=0; i<10; ++i )
{
printf( "请输入数据: " );
scanf( "%d", &nums[i] );
sum += nums[i];
#include<stdio.h>
void main()
{
int num1=1,num2=1,i=1;
printf("%3d%3d",num1,num2);
while(i<=20)
{
num1=num1+num2;
num2=num1+num2;
i++;
printf("%3d%3d",num1,num2);
{
n=a%10;
sum+=n;

C primer plus(第五版)课后编程练习答案(完整)

C primer plus(第五版)课后编程练习答案(完整)

#include<stdio.h>
int main(void)
{
char a;
scanf("%d",&a);
printf("%c\n",a);
return(0);
}
3.编写一个程序,发出警报声,并打印下列文字:
Startled by the sudden sound, Sally shouted, "By the Great Pumpkin, what was that!"
第一章 概览
编程练习
1.您刚刚被MacroMuscle有限公司(Software for Hard Bodies)聘用。该公司要进入欧洲市场,需要一个将英寸转换为厘米(1英寸=2.54 cm)的程序。他们希望建立的该程序可提示用户输入英寸值。您的工作是定义程序目标并设计该程序(编程过程的第1步和第2步)。
return(0);
}
void display(void)
{
printf("Smile!");
}
7.编写一个程序,程序中要调用名为one_three()的函数。该函数要在一行中显示单词"one",再调用two()函数,然后再在另一行中显示单词"three"。函数two()应该能在一行中显示单词"two"。main()函数应该在调用one_three()函数之前显示短语"starting now:",函数调用之后要显示"done!"o这样,最后的输出结果应如下所示:
Which nobody can deny!

C程序设计(第四版)(谭浩强)完整版 课后习题答案

C程序设计(第四版)(谭浩强)完整版 课后习题答案

C程序设计(第四版)(谭浩强)第一章课后习题答案P006 1.1 向屏幕输出文字.#include<stdio.h>//预编译. 代码均调试成功,若有失误大多不是代码问题.自已找找.int main(){printf("Welcome to \n");return 0; //与int main对应,为了程序可移植性,建议全用int main + return 0;.}P008 1.2 求两个数的和.#include<stdio.h>int main(){int a,b,sum;a=5;b=4;sum=a+b;printf("The sum is %d .\n",sum);return 0;}P008 1.3 调用函数比较两个数的大小.#include<stdio.h>int main(){int max(int x,int y); //被调用函数在主函数后面,用前先声明.int a,b,c;scanf("%d,%d",&a,&b); //输入时要按格式来,此处的逗号,用空格会发生错误.c=max(a,b); //a,b作为实参传入被调用函数中.printf("The max is %d .\n",c);return 0;}int max(int x,int y) //定义了两个形参.{int z; //z属于局部变量,可与主函数中相同名字.if (x>y)z=x;elsez=y;return(z); //z作为整个程序的出口值,赋给主函数中的c.}P015 0.6 三个数的大小.(数字0表示课后练习题)#include<stdio.h>int main(){int a,b,c,d; //d是用于存储最大值的.int max(int x , int y , int z); //测试可知,在VS2008中,可以不预先声明.printf("Please input 3 numbers :\n");scanf("%d %d %d",&a,&b,&c);d=max(a,b,c); //调用函数中有三个形参,这里需要传入三个实参,才可运算.printf("The max is :%d .\n",d); // d可以换成max(a,b,c).}int max(int x , int y , int z){int m;if (x>y && x>z) //求三者之大的一种方法.m=x;if (y>x && y>z)m=y;if (z>y && z>x)m=z;return (m); //返回值m给主函数中的d.}C程序设计(第四版)(谭浩强)第2章课后习题答案算法——程序的灵魂#include<stdio.h>int main(){int i,s=1; //在执行数值操作前一定要先有个初值.for(i=1;i<6;i++) //这里是到6.{s=s*i; //相乘}printf("The sum is %d .\n",s);return 0;}#include<stdio.h> //作出要求:换成1到11间奇数相乘.int main(){int i,s=1; //在执行数值操作前一定要先有个初值.for(i=1;i<12;i++) //这里是到,但题目要求的是取单数.也可以是i=i+2{if(i%2!=0) //i对取模,值为非为奇数;为则为偶数.s=s*i;elsecontinue; //跳过这个for循环的这一次,执行下一次.}printf("The sum is %d .\n",s);return 0;}P019 2.2 按要求输出80分以上的学生信息.暂时没法做.P019 2.3 判断2000-2500年中的闰年,并输出.年的概念是地球围绕太阳一周的时间(所谓公转周期)称为一年,这个周期是相当稳定的,很长时间也不会变动1秒,但是真正的一年是365.2423天(目前)。

C语言程序设计教程 第五章 课后习题参考答案

C语言程序设计教程 第五章 课后习题参考答案

C语言程序设计教程第五章课后习题参考答案一、选择题1. B2. A3. C4. B5. D二、填空题1. while2. binary3. 164. 35. continue6. global三、判断题1. 错误2. 正确3. 错误4. 错误5. 正确四、编程题1.```c#include<stdio.h>int main() {int num;printf("请输入一个整数:"); scanf("%d", &num);if (num % 2 == 0) {printf("%d是偶数\n", num); } else {printf("%d是奇数\n", num); }return 0;}```2.```c#include<stdio.h>int main() {int num1, num2;printf("请输入两个整数:");scanf("%d %d", &num1, &num2);printf("%d与%d的和为%d\n", num1, num2, num1 + num2); return 0;}```3.```c#include<stdio.h>int isPrime(int num) {int i;if (num <= 1)return 0;for (i = 2; i <= num / 2; i++) {if (num % i == 0) {return 0;}}return 1;}int main() {int num;printf("请输入一个整数:");scanf("%d", &num);if (isPrime(num)) {printf("%d是素数\n", num); } else {printf("%d不是素数\n", num); }return 0;}```4.```c#include<stdio.h>int factorial(int num) {int i, result = 1;for (i = 1; i <= num; i++) {result *= i;}return result;}int main() {int num;printf("请输入一个整数:");scanf("%d", &num);printf("%d的阶乘为%d\n", num, factorial(num)); return 0;}```五、简答题1. C语言逻辑与运算符(&&)短路特性是什么?答:C语言逻辑与运算符(&&)具有短路特性,即在进行逻辑与运算时,如果前一个表达式的值为假(0),则后面的表达式将不会被计算,整个逻辑与表达式的值直接为假(0)。

《C语言程序设计》第4版何钦铭、颜晖主编课后习题答案

《C语言程序设计》第4版何钦铭、颜晖主编课后习题答案

《C语⾔程序设计》第4版何钦铭、颜晖主编课后习题答案第2章 ⽤C语⾔编写程序Page 0201#include<stdio.h>//练习2-32int main(void)3{4 int i,j,k;5 for(int i=1;i<=4;i++)//第i⾏6 {7 for(int j=1;j<=i-1;j++)//j个空格8 {9 printf(" ");10 }11 for(k=1;k<=5-i;k++)//k个*12 {13 printf("* ");14 }15 printf("\n");16 }1718 return 0;19}Page 0231#include<stdio.h>2int main(void)3{4 int f,c;//练习2-55 f=150;6 c=5*(f-32)/9;//或者是c=5/9.0*(f-32)||c=5.0/9*(f-32),但不可以是5/9,会得到0.因为:两个整型数据做除法运算,结果⼀定是整数。

7 printf("华⽒温度%d对应的摄⽒温度为%d.\n",f,c);89 printf("\n");1011 /*计算物体⾃由下落的距离(练习2-6)*/12 int h,g,t;13 t=3;//下落时间14 g=10;//重⼒加速度 10m/s^215 h=g*t*t/2;16 printf("⼀个物体从100⽶的⾼空⾃由下落,前3秒内下落的距离为:%d⽶.\n",h);1718 return 0;19}20Page 0292#include<math.h>3int main(void)4{5 /*计算摄⽒温度(练习2-8)*/6 double c,f;7 printf("输⼊华⽒温度:");8 scanf("%lf",&f);9 c=5*(f-32)/9.0;10 printf("华⽒温度%.2lf对应的摄⽒温度为%.3lf\n",f,c);1112 printf("\n");1314 /*整数四则运算(练习2-9)*/15 int x,y,z_1,z_2,z_3;16 double z_4;17 printf("输⼊两个正整数x,y:");18 scanf("%d %d",&x,&y);19 z_1=x+y;20 z_2=x-y;21 z_3=x*y;22 z_4=x/y;23 printf("%d和%d的和为%d,差为%d,积为%d,商为%lf\n",x,y,z_1,z_2,z_3,z_4); 2425 printf("\n");2627 /*计算分段函数(判断x是否不为0)(练习2-10)*/28 double x_1,y_1;29 printf("输⼊x_1:");30 scanf("%lf",&x_1);31 if(x_1!=0)32 y_1=1/x_1;33 else y_1=0;34 printf("输⼊%.2lf时,对应的y值为%.1lf\n",x_1,y_1);3536 printf("\n");3738 /*计算分段函数(判断x是否⼩于0)(练习2-11)*/39 double x_2,y_2;40 printf("输⼊x_2:");41 scanf("%lf",&x_2);42 if(x_2<0)43 y_2=pow(1+x_2,2)+2*x_2+1/x_2;44 else y_2=sqrt(x_2);45 printf("输⼊%.2lf时,对应的y值为%.2lf\n",x_2,y_2);464748 printf("\n");4950 return 0;51}Page 0372int main(void)3{4 int i,n,flag;//例2-85 double t,sum;6 printf("输⼊⼀个正整数n:");7 scanf("%d",&n);8 sum=0;9 flag=1;10 for(i=1;i<=n;i++)11 {12 t=flag*(1.0/(2*i-1));13 sum+=t;14 flag=(-1)*flag;1516 }17 printf("sum=%lf\n",sum);1819 printf("\n");2021 /*求1+1/2+···的前n项和(练习2-13)*/22 int n_1,j;23 double sum_1=0;24 printf("Enter n_1(n_1>=0):");25 scanf("%d",&n_1);26 for(j=1;j<=n;j++)27 {28 sum_1+=1.0/j;29 }30 printf("sum_1=%.2lf\n",sum_1);3132 printf("\n");3334 /*求1+1/3+1/5+···的前n项和(练习2-14)*/35 int n_2,k;36 double sum_2;37 printf("Enter n_2:");38 scanf("%d",&n_2);39 for(k=1;k<=n_2;k++)40 {41 sum_2+=1.0/(2*k-1);42 }43 printf("sum_2=%.2lf\n",sum_2);4445 printf("\n");4647 /*求1-1/4+1/7-1/10+···的前n项和(练习2-15)*/48 int n_3,m,flag_1=1;49 double sum_3=0;50 printf("Enter n_3:");51 scanf("%d",&n_3);52 for(m=1;m<=n;m++)53 {54 sum_3+=flag_1*1.0/(3*m-2);55 flag_1=flag_1*(-1);56 }57 printf("sum_3=%.2lf\n",sum_3);5859 return 0;60}Page 0402#include<math.h>3int main(void)4{5 int n,i;6 double power;7 printf("Enter n:");8 scanf("%d",&n);9 printf("2的乘⽅表:\n");10 for(i=0;i<=n;i++)11 {12 power=pow(2,i);13 printf("2的%d次⽅为%.0lf\n",i,power);14 }1516 printf("\n");1718 /*3的乘⽅表(练习2-17)*/19 int m,j;20 double power_1;21 printf("Enter m:");22 scanf("%d",&m);23 for(j=0;j<=m;j++)24 {25 power_1=pow(3,j);26 printf("pow(3,%d)=%.lf\n",j,power_1);27 }2829 return 0;30}1#include<stdio.h>//练习2-182double fact(int n)3{4 int i;5 double product;6 product=1;7 for(i=1;i<=n;i++)8 {9 product*=i;10 }1112 return product;13}14int main(void)15{16 int n,m,i;17 double result_1,result_2,result_3,c;18 printf("输⼊两个正整数m和n(m<=n):");19 scanf("%d %d",&m,&n);20 for(i=0;i<=n;i++)21 {22 result_1=fact(i);23 }24 for(i=0;i<=m;i++)25 {26 result_2=fact(i);27 }28 for(i=0;i<=n-m;i++)29 {30 result_3=fact(i);31 }32 c=result_1/(result_2*result_3);33 printf("c=%.lf",c);3435 return 0;36}。

C程序设计(第四版)(谭浩强)完整版_课后习题答案

C程序设计(第四版)(谭浩强)完整版_课后习题答案

C程序设计(第四版)(谭浩强)第一章课后习题答案P006 1.1 向屏幕输出文字.#include<stdio.h>//预编译. 代码均调试成功,若有失误大多不是代码问题.自已找找. int main(){printf("Welcome to \n");return 0; //与int main对应,为了程序可移植性,建议全用int main + return 0;.}P008 1.2 求两个数的和.#include<stdio.h>int main(){int a,b,sum;a=5;b=4;sum=a+b;printf("The sum is %d .\n",sum);return 0;}P008 1.3 调用函数比较两个数的大小.#include<stdio.h>int main(){int max(int x,int y); //被调用函数在主函数后面,用前先声明.int a,b,c;scanf("%d,%d",&a,&b); //输入时要按格式来,此处的逗号,用空格会发生错误.c=max(a,b); //a,b作为实参传入被调用函数中.printf("The max is %d .\n",c);return 0;}int max(int x,int y) //定义了两个形参.{int z; //z属于局部变量,可与主函数中相同名字.if (x>y)z=x;elsez=y;return(z); //z作为整个程序的出口值,赋给主函数中的c.}#include<stdio.h>int main(){int a,b,c,d; //d是用于存储最大值的.int max(int x , int y , int z); //测试可知,在VS2008中,可以不预先声明.printf("Please input 3 numbers :\n");scanf("%d %d %d",&a,&b,&c);d=max(a,b,c); //调用函数中有三个形参,这里需要传入三个实参,才可运算.printf("The max is :%d .\n",d); // d可以换成max(a,b,c).}int max(int x , int y , int z){int m;if (x>y && x>z) //求三者之大的一种方法.m=x;if (y>x && y>z)m=y;if (z>y && z>x)m=z;return (m); //返回值m给主函数中的d.}C程序设计(第四版)(谭浩强)第2章课后习题答案算法——程序的灵魂#include<stdio.h>int main(){int i,s=1; //在执行数值操作前一定要先有个初值.for(i=1;i<6;i++) //这里是到6.{s=s*i; //相乘}printf("The sum is %d .\n",s);return 0;}#include<stdio.h> //作出要求:换成1到11间奇数相乘.int main(){int i,s=1; //在执行数值操作前一定要先有个初值.for(i=1;i<12;i++) //这里是到,但题目要求的是取单数.也可以是i=i+2{if(i%2!=0) //i对取模,值为非为奇数;为则为偶数.s=s*i;elsecontinue; //跳过这个for循环的这一次,执行下一次.}printf("The sum is %d .\n",s);return 0;}P019 2.2 按要求输出80分以上的学生信息.暂时没法做.P019 2.3 判断2000-2500年中的闰年,并输出.年的概念是地球围绕太阳一周的时间(所谓公转周期)称为一年,这个周期是相当稳定的,很长时间也不会变动1秒,但是真正的一年是365.2423天(目前)。

C语言程序设计(何欣铭、颜晖 第2版)课后习题答案

C语言程序设计(何欣铭、颜晖 第2版)课后习题答案
1 1 1 1 1 2-15 编写程序,输入一个正整数 n,计算1 ..... 的前 n 项之和。 4 7 10 13 16
解答: #include <stdio.h> int main(void) { int flag, i, n, denominator; double item, sum; scanf("%d", &n); sum = 0; flag = 1; denominator = 1; for(i = 1; i <= n; i++){ item = flag * 1.0 / denominator; sum = sum + item; flag = -flag; denominator = denominator + 3; } printf("sum = %.3f\n", sum); return 0; } 2-16 编写程序,输入两个正整数 m 和 n,计算 m! + n!。 解答: #include "stdio.h"
22
int main(void) { int i, m, n; double fm, fn; scanf("%d%d", &m, &n); fm = 1; for(i = 1; i <= m; i++) fm = fm * i; fn = 1; for (i = 1; i <= n; i++) fn = fn * i; printf("%d! + %d! = %.0f\n", m, n, fm+fn); return 0; } 2-17 执行下列程序段后,sum 的值是 for (i = 1; i <= 10; i++){ sum = 0; sum = sum + i; } 解答:sum 的值是 10。 。

C语言第二章习题带答案

C语言第二章习题带答案

1.C语言中的简单数据类型包括( B )。

A.整型、实型、逻辑型B.整型、实型、字符型C.整型、字符型、逻辑型D.整型、实型、逻辑型、字符型2.在C语言中,错误的int类型的常数是( A )。

A.32768 B.0 C.037 D.0Xaf3.下列常数中不能作为C的常量的是( D )。

A.0x45 B.2.5e-2 C.3e2 D.05824.设int类型的数据长度为2个字节,则unsigned int类型数据的取值范围是( B )。

A.0至255 B.0~65535 C.-32768~32767 D.-256~2555.下面4个选项中,均是合法转义字符的选项是( A )。

A.'\'','\\','\n' B.'\','\017','\'C.'\018','\f','xab' D.'\\0,'101','x1f6.在C语言中,数字029是一个( D )。

A.八进制数B.十六进制数 C.十进制数D.非法数7.下列可以正确表示字符型常数的是( B )。

A."a" B.'\t' C."\n" D.2978.以下( C )是错误的转义字符。

A.'\\' B.'\'' C.'\81' D.'\0'9.C语言中整数-8在内存中的存储形式是( A )。

A.1111 1111 1111 1000 B.100000000000 1000C.000000000000 1000 D.1111 1111 1111 011110.将字符g赋给字符变量c,正确的表达式是( C )。

A.c="g" B.c=101 C.c='\147' D.c='0147' 11.字符串"\\\22a,0\n"的长度是( C )。

c课后习题解答

c课后习题解答

第6章;类和对象(一)练习题66.1判断题×1.使用class定义的类,其默认的访问权限是公有的,使用struct定义的类,其默认的访问权限是私有的。

×2.类中的成员函数都是公有的,数据成员都是私有的。

×3.定义在类体内的成员函数是内联函数,定义在类体外的成员函数不能是内联函数。

√4.类定义后,它的成员个数及名称就不会再被改变了。

×5.定义或说明对象时,系统会自动调用构造函数为创建的对象初始化。

如果类中没有定义任何构造函数时,就无法给定义的对象初始化。

√6.定义一个对象时,系统只为该对象的数据成员开辟内存空间,而成员函数是同类对象共享的。

√7.对象成员的表示方法与结构变量成员的表示方法相同。

√8.创建对象时系统自动调用相应的构造函数为对象初始化,没有相应的构造函数时,系统会自动生成。

√9.构造函数是一个其名与类名相同的特殊的成员函数。

×10.析构函数是一个函数体为空的成员函数。

√11.构造函数和析构函数都是系统自动调用的成员函数。

×12.构造函数和析构函数都可以重载。

√13.成员函数与一般函数一样可以重载、内联和设置参数的默认值。

×14.静态成员是指静态对象的成员。

×15.静态数据成员必须在构造函数的成员初始化列表中进行初始化。

√16.静态成员都可以使用类名加作用域运算符的方法来引用。

×17.静态成员函数中引用静态数据成员和非静态数据成员的方式是相同的。

√18.常成员指的是类体内使用const关键字说明的常数据成员和常成员函数。

×19.常数据成员在常成员函数中的值是不允许改变的,而在非常成员函数中是允许改变的。

√20.常对象需要引用常成员函数,而不能引用非常成员函数。

×21.常对象的数据成员都是常数据成员。

√22.友元函数是说明在类体内的非成员函数,它可以访问类中的所有成员。

×23.可以把一个一般函数说明为某类的友元函数,也可以将某类的成员函数说明为另类的友元函数。

c语言习题册及答案

c语言习题册及答案

第3章课后练习及作业习题指导(参考答案)作业01 C语言基础知识一、选择题1.C语言程序的基本单位是()。

A)函数 B)过程 C)子程序 D)子例程2.下列个选项中,合法的C语言关键字是()。

A)integer B)sin C)string D)void3.下列选项中,不是C语言提供的合法关键字的是()。

A)switch B)cher C)default D)case4.以下选项中合法的用户标识符是()。

A)int B)a# C)5mem D)_2435.C语言程序一行写不下时,应该()。

A)用回车换行 B)在任意空格处换行C)用分号换行 D)用逗号换行6.在C程序中,可以作为用户标识符的一组标识符是()。

A)void define WORD B)as_b3 _224 ElseC)switch —wer case D)4b DO SIG7.在C语言中,下列合法的字符常量是()。

A)’\039 B)’\x76’ C)’ab’ D)’\o’8.以下说确的是()。

A)C语言程序是从第一个定义的函数开始执行B)在C语言程序中,要调用的函数必须在main()函数中定义C)C语言程序是从main()函数开始执行的D)C语言程序中的main()函数必须放在程序的开始部分9.()是构成C语言程序的基本单位A)函数 B)变量 C)子程序 D)语句10.一个C语言程序总是从()开始执行的A)主过程B)主函数 C)子程序 D)主程序11.以下叙述不正确的是()A)一个C源程序可由一个或多个函数组成B)一个C源程序必须包含一个main()函数C)C程序的基本组成单位是函数D)在C程序中,注释说明只能位于一条语句的后面12.C语言规定:在一个源程序中,main()函数的位置()A)必须在最开始 B)必须在系统调用的库函数的后面C)可以任意 D)必须在最后13.以下叙述正确的是()A)在C程序中,main()函数必须位于程序的最前面B)C程序中的每行中只能写一条语句C)C语言本身没有输入输出语句D)在对一个C程序进行编译的过程中,可发现注释中的拼写错误14.C语言中标识符只能由字母、数字和下划线3种字符组成,且第一个字符()A)必须为字母 B)必须为下划线C)必须为字母或下划线 D)可以是字母、数字和下划线中任意一种字符二、填空题1.一个C语言编写的程序是从main函数开始执行的。

C语言编程练习题与答案 顺序结构3-3

C语言编程练习题与答案 顺序结构3-3
习,原题改编)答案 源代码: #include <stdio.h>
int main() {
int a,b; scanf("%d",&a);
b=(a-a%100)/100;a=a-100*b; //100 元的张数 printf("%d",b);
输入:|210 输出:|11010010 5.要求: 时间要求:1000 MS; 内存要求:32768 KB; 【继续考虑】如果要求输出十六进制该怎么办? 五、手动计算并深入解释计算过程 (《C 语言开发宝典》,上机练习 5.11,上机练习 5.12,原题) (《C 语言开发宝典》,上机练习 5.10,等同原题)【提交:纸质材料 + 口头】 请计算以下各表达式(双下划线部分)的解,并给出计算过程的详细解释:
答案: 1.5 2.运算出错,error C2106: '+=' : left operand must be l-value
(+=符号的左面必须是一个变量,不能是表达式) 3.14
printf("%d",a);
return 0; }
三、求以下算术表达式的值(codeup,1155,原题)答案 源代码: #include <stdio.h>
int main() {
int a; double x,y,n;
scanf("%lf %d %lf",&x,&a,&y); n=(x+a%3*(int)(x+y)%2/4);
输入:|1258 输出:|12 1 0 0 1 3 5.要求: 时间要求:1000 MS; 内存要求:32768 KB;

《C语言程序设计教程》习题参考答案

《C语言程序设计教程》习题参考答案

《C语言程序设计教程》习题参考答案C语言程序设计教程习题参考答案一、基本概念和语法要点1. 整型变量x的声明和初始化语句为:int x = 10;2. C语言的标识符命名规则:- 只能由字母、数字和下划线组成;- 必须以字母或下划线开头;- 大小写敏感。

3. 常量的分类:- 整型常量;- 实型常量;- 字符常量;- 字符串常量;- 枚举常量;- 特殊常量。

4. 基本输入输出函数的使用:- printf():输出格式化字符串;- scanf():从标准输入读取格式化数据。

5. C语言中的运算符:- 算术运算符:+、-、*、/、%;- 关系运算符:==、!=、>、<、>=、<=; - 逻辑运算符:&&、||、!;- 位运算符:&、|、^、~、<<、>>。

二、流程控制语句1. if语句的基本结构:```if (条件表达式){// 如果条件成立执行的代码}```2. switch语句的使用:```switch (表达式)case 值1:// 执行的代码块break;case 值2:// 执行的代码块break;default:// 执行的代码块break;}```3. while循环语句的基本结构: ```while (条件表达式){// 循环执行的代码}4. for循环语句的使用:```for (初始化表达式; 条件表达式; 更新表达式) {// 循环执行的代码}```三、数组与字符串1. 数组的声明和初始化语句:```int arr[5] = {1, 2, 3, 4, 5};```2. 字符串的声明和初始化语句:```char str[20] = "Hello, World!";```3. 字符串的输入输出函数:- gets():从标准输入读取字符串; - puts():将字符串输出到标准输出。

4. 字符串处理函数:- strlen():计算字符串长度;- strcat():拼接字符串;- strcpy():复制字符串;- strcmp():比较两个字符串。

标准C语言程序设计第五版课后练习题答案

标准C语言程序设计第五版课后练习题答案

课后练习题答案Chapter 11.1×√×√√×√××√1.2b c1.3ad1.4semicolon printf math。

h \nChapter 22。

1 ×√××√√×√××√×2.2 typedef 255 external constChapter 33。

1 ×√××√√×××√√√3.2 integer modula 6 logical sizeof paratheses typeconversion precedence3.3 F F T F F F3。

4 F T T T F3。

5 (b) (c)3.6 0 -2 7 10.25 false 3 3 13.10 0 1 1 1 13。

11d}1003。

121101113。

13 13.14 2003。

15 x〈=y3。

16 TRUE3。

192143.20—4040Chapter 44。

1 ×√√√√√××√√√×4。

2 %hd %x ctype.h %l %*d [^] blank 6 - %e4.4 (a) scanf(“%d %c %d", &a, &b, &c); (b)scanf(“%d %f %s”, &a,&b, &c);(c) scanf(“%d—%d-%d", &a, &b,&c); (d) scanf(“%d %s %d”, &a, &b,&c);4。

5 (a)10x1.230000 (b)1234x 1。

23 (c)1234 456。

000000 (d)“123。

40 " (e) 1020 1222(乱码)4.7 (a)1988 x (b)乱码(c)120 乱码(d)乱码 x4.8 (a)1275 -235.740000(b) 1275-235.740000(c) 0 0.000000(d) 1275xxxx—235.74(e)Cambridge(f)1275 Cambridge4.10 1988 无无Chapter 55.1 √×√××××××√5。

c语言第五章选择结构程序设计(习题册答案)

c语言第五章选择结构程序设计(习题册答案)

c语言第五章选择结构程序设计(习题册答案)第五章选择结构程序设计基础练习(A)一、填空题1、关系表达式的运算结果是逻辑值。

C语言没有逻辑型数据,以1代表“真”,以0代表“假”。

2、逻辑运算符!是单目运算符,其结合性是由右结合性。

3、C语言提供的三种逻辑运算符是&&、|| 、!。

其中优先级最高的为!,优先级最低的为| | 。

4、逻辑运算符两侧的运算对象不但可以是0和1,或者是0和非0的整数,也可以是任何类型的数据。

系统最终以0 和非0 来判定它们属于“真”或“假”。

5、设y为int型变量,请写出描述“y是偶数”的表达式(y%2==0)。

6、设x,y,z均为int型变量,请写出描述“x或y中有一个小于z”的表达式x<z||y<="">7、条件“2<x<3或x<-10”的c语言表达式是x<-10||x>2&&x<3。

</x<3或x<-10”的c语言表达式是x<-10||x>8、判断char型变量ch是否为大写字母的正确表达式是(ch>=‘A’)&&(ch<=‘Z’)。

9、当a=3,b=2,c=1时,表达式f=a>b>c的值是0。

10、当a=5,b=4,c=2时,表达式a>b!=c的值是1。

11、已知A=,B=2,C=,表达式A>B&&C>A||A<b&&!c>B的值是0。

</b&&!c>12、若a=6,b=4,c=2,则表达式!(a-b)+c-1&&b+c/2的值是1。

13、有int x,y,z;且x=3,y=-4,z=5,则表达式(x&&y)==(x||z)的值为1。

14、有int x,y,z;且x=3,y=-4,z=5,则以下表达式的值为1。

c语言第五版课本课后习题答案

c语言第五版课本课后习题答案

c语言第五版课本课后习题答案C语言是一门广泛应用的编程语言,其第五版课本通常包含了大量的理论知识和实践练习。

课后习题是帮助学生巩固和检验学习成果的重要部分。

以下是一些C语言第五版课本课后习题的答案示例,请注意,这些答案仅供参考,具体答案可能因课本版本和习题内容的不同而有所变化。

# 第一章:C语言概述习题1:简述C语言的特点。

答案: C语言是一种结构化编程语言,具有高效性、可移植性、丰富的运算符和数据类型等特点。

它广泛应用于系统软件、嵌入式系统等领域。

习题2:解释编译型语言和解释型语言的区别。

答案:编译型语言在执行前需要通过编译器将源代码转换为机器语言,生成可执行文件;而解释型语言在执行时由解释器逐行解释执行,不需要编译过程。

# 第二章:数据类型与变量习题1:列举C语言中的基本数据类型。

答案: C语言的基本数据类型包括整型(int)、浮点型(float和double)、字符型(char)等。

习题2:什么是变量?变量声明的一般形式是什么?答案:变量是存储数据值的容器,其名称可以代表内存中的一个存储位置。

变量声明的一般形式为:`数据类型变量名;`。

# 第三章:控制结构习题1:什么是条件语句?列举C语言中的条件语句类型。

答案:条件语句用于根据条件的真假来控制程序的执行流程。

C语言中的条件语句包括if语句、if...else语句和switch语句。

习题2:循环语句的作用是什么?C语言中有哪些循环语句?答案:循环语句用于重复执行一段代码直到满足特定条件。

C语言中的循环语句包括for循环、while循环和do...while循环。

# 第四章:函数习题1:函数的定义是什么?函数的作用是什么?答案:函数是一段具有特定功能的代码块,可以被重复调用。

函数的作用是实现代码的模块化,提高代码的复用性。

习题2:函数声明和函数定义的区别是什么?答案:函数声明提供了函数的名称、返回类型和参数列表,但不包含函数的实现细节;函数定义则包含了函数的实现代码。

C语言程序设计课后练习辅导全资料

C语言程序设计课后练习辅导全资料
C.定义了一个名为*p的整型数组,该数组含有三个int类型元素
D.定义了一个可指向一维数组的指针变量p,所指一维数组应具有三个int类型元素
B
单选题
已定义以下函数
fun(char *p2, char *p1)
{ while((*p2=*p1)!=‘\0’){p1++;p2++; } }函数的功能是( )。
C.只有a[0][1]的值为0
D.以上都不正确
B
单选题
下面函数f的定义:
f(int a) {printf("%d",a);}
函数f的返回类型( )。
A.同参数a的类型相同
B.是void类型
C.没有返回值
D.无法确定
A
单选题
以下正确的说法是( )。
A.定义函数时,形参的类型说明可以放在函数体
B.return后边的值不能为表达式
B
单选题
以下叙述中正确的是( )。
A.局部变量说明为static存储数,其生存期将得到延长
B.全局变量说明为static存储类,其作用域将被扩大
C.任何存储类的变量在未赋初值时,其值都是不确定的
D.形参可以使用的存储类说明符与局部变量完全相同
A
单选题
在函数调用过程中,如果函数funA调用了函数 funB,函数funB又调用了函数funA,则( )。
A.称为函数的直接递归调用
B.称为函数的间接递归调用
C.称为函数的循环调用
D.C语言中不允许这样的递归调用
B
单选题
C语言中数组下标的下限是( )。
A.1
B.0
C.视说明语句而定
D.无固定下限
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第1章绪论
一、选择题
C D C C D A B D A C A
二、填空题
1.二进制数、程序存储控制
2.73 3b 59
3. 1110101 165 75
4. 11011010.1
5. 1024 1024
6. 802b ffd4 ffd5 4f 4f 4f
7. 65535 32768 -1 -63768
8. ASCII码
9. 硬件系统、软件系统
10. .C .OBJ .EXE
11. 英文字母、数字、下划线、字母或下划线
12.main()、函数体
第2章数据及运算
一、选择题
B C A C A A B A D D
二、填空题
1.a=-0438 a=b-a=3
3.'A' '\n' '\t'
4.452、5、2、0、26
5.2011,9,2021
6.(x*x+y*y)/(x-y) 3.14*R*R*R*3/4 8*(x+9*(10*(7-y)+20))
第3章顺序结构程序设计
一、选择题
D B D A B A B C C
二、填空题
5.scanf(“%f”, &r); printf(“%f”, s);
第4章选择结构程序设计
一、选择题
D B C D A D A A
二、填空题
1. a=2,b=1
2. 1,0,1
3. 1,0,3
4. c=getchar() c>=‟0‟&&c<=‟9‟c>=‟A‟&&c<=‟Z‟c>=‟a‟&&c<=‟c‟
5. op …-…break
6. x:y u:z
7. c= =t c>t c>=50
第5章循环结构程序设计
一、选择题
A A D C A D A A D D
二、填空题
6. m%10 m/10
7. f*q
8. fac=fac*(i+1)*(i+2) fabs(xn/fac)
9. s=s+j s==i
10. i<10 j%3!=0
11. j=1 k<=6
12. 100-5*i-2*j k>=0
第6章函数
一、选择题
C D B D B D D A A B A A D C A
二、填空题
1. 4,3,5
2. x=8,r=16
3. 15
7. int fun(int); return m;
8. double s1,s2; return v;
第7章指针
一、选择题
A B C A A A
二、填空题
6. num=*b; num=*c;
第8章数组
一、选择题:
1~5 D D D B D 6~10 C D A DA B
二、填空题
1. 5,15
2. x=0
x=0
3.□□□□□□10□□□□□□13□□□□□□15□□□□□□16□□□□□□17□□□□□□19(□代表空格)
4.i=1 b[i]=a[i-1]+a[i] i%3==0
5.a[i]=a[i+1] p<a+10-count
6.void fun(int x[],int n,int p[])
第9章字符串
一、选择题:
1~5 C D C C A 6~8 D A A
二、填空题
1. I love China!
China!
2. sw*
3. defgged
4. CHINA<CHINAESE
5. 7654321
6. 123
56
9
7. 123
56
9
8. □□□□2
第10章结构体、联合体与枚举
一、选择题
1~5 B A C A B 6~10 A B B A B
二、填空题
1. a□□□□□□□d
abc□□□□□def
ghi□□□□□mno
hi□□□□□□ef
3.5□□4□□3□□2□□1□□0□□-1□□-2□□-3□□-4
4.5□9
5. 1□□□2□□□3
6.sum=0 p++
第11章位和位段
一、选择题
1~5 C C B A C 6~8 A A B
第12章文件
一、选择题
A 返回0 C A A A。

相关文档
最新文档