重庆理工大学C语言实验答案
C语言程序设计 上机实验指导与习题 参考答案(第四版)
C 语言程序设计上机实验指导与习题参考答案(第四版)(学生改编)实验 1:C语言程序初步一、实验目的(1)了解所用的计算机系统的基本操作方法,学会独立使用该系统。
(2)了解在该系统上如何编辑、编译、连接和运行一个 C程序。
(3)通过运行简单的 C 程序,初步了解 C程序的特点。
(4)在教师的指导下,学会使用在线评判系统。
二、实验内容1.运行第一个 C 程序题目:ThefirstCProgram将下列程序输入visualc ,编译、连接和运行该程序。
includequotstdio.hquotmain printfquotThefirstCProgramnquot具体操作步骤(1)在编辑窗口中输入程序。
(2)保存程序,取名为a1.c。
(3)按照第一章中介绍的方法,编译、连接和运行程序。
,则该题完成。
4按照第三章介绍的方法,将代码提交到在线评判系统,系统返回“通过”2.在在线评判系统中提交实现了计算 ab 功能的程序题目 1001:计算ab由键盘输入两个整数,计算并输出两个整数的和。
实现该功能的程序如下,inclu dequotstdio.hquotmain int ab scanfquotddquotampaampbprintfquotdquotab(1)在程序编辑窗口中输入程序。
(2)保存程序,取名为a2.c。
(3)按照前二章中介绍的方法,编译、连接和运行程序。
(4)在程序运行过程中,输入 15 30↙↙表示输入回车符(5)如果看到如下输出结果,则表明1530 的结果正确,如果得不到如下结果,则需检查并更正程序。
45(6)按照第三章中介绍的方法进入在线评判系统。
(7)显示题目列表,点击题号为 1001,题名为“计算ab”的题目。
(8)查看完题目要求后,点击页面下端的“sumbit” ,参照第二章提交程序的方法提交程序a2.c。
(9)查看评判结果,如果得到“accepted”则该题通过,否则返回第一步检查程序是否正确。
c语言实验答案
c语言实验答案//1.1编写一程序,在屏幕上输出如下内容:// X | X | X //---+---+--- // | | //---+---+---// 0 | 0 | 0#include <stdio.h> void main(){printf(" X | X | X\n"); //注意转义字符\n的用法printf("---+---+---\n ");printf(" | |\n");printf("---+---+---\n ");printf(" 0 | 0 | 0\n"); }//1.2输出"Hello world!"语句#include <stdio.h> void main() {printf("Helloworld!\n");}//2.1编写一程序,接受用户输入的两个整数,并计算它们的和、差、积、商,程序运行结果应如下所示。
//注意,尖括号部分表示用户输入数据或要被替换的输出内容,尖括号本身并不需要输入或输出。
//多使用几组整数尝试一下,你发现了什么?//The program gets two integers,andcomputes their sum,difference,produc t and quotient.//The first number:<第一个整数在此输入>//The second number:<第二个整数在此输入>//Results as follows://<第一个整数>+<第二个整数>=<和>//<第一个整数>-<第二个整数>=<差>//<第一个整数>*<第二个整数>=<积>//<第一个整数>/<第二个整数>=<商>#include<stdio.h> void main(){int a,b;printf("The program gets two integers,and computes theirsum,difference,produc t and quotient.\n"); printf("The first number:");scanf("%d",&a); printf("The second number");scanf("%d",&b); printf("Results as follows:\n");printf("%d+%d=% d\n",a,b,a+b);printf("%d-%d=% d\n",a,b,a-b);printf("%d*%d=% d\n",a,b,a*b);printf("%d+%d=% f\n",a,b,1.0*a/b); //做除法时要注意,除得的结果是实数}//2.2输入半径r的值,求出圆周长,圆面积#include<stdio.h>#define PI 3.14void main(){int r;float zhouchang,mianji; printf("please input r:");scanf("%d",&r); zhouchang=2*PI*r; mianji=2*PI*r*r; printf("zhouchang= %f\n",zhouchang); printf("mianji=%f\ n",mianji);}//3.1如何实现下述输出要求?//A.输出整数1234,输出共占8位,数据左对齐。
c语言实验答案
//1.1编写一程序,在屏幕上输出如下内容:// X | X | X//---+---+--- // | | //---+---+---// 0 | 0 | 0#include <stdio.h>void main(){printf(" X | X | X\n"); //注意转义字符\n的用法printf("---+---+---\n");printf(" | |\n");printf("---+---+---\n");printf(" 0 | 0 | 0\n");}//1.2输出"Hello world!"语句#include <stdio.h>void main(){printf("Hello world!\n");}//2.1编写一程序,接受用户输入的两个整数,并计算它们的和、差、积、商,程序运行结果应如下所示。
//注意,尖括号部分表示用户输入数据或要被替换的输出内容,尖括号本身并不需要输入或输出。
//多使用几组整数尝试一下,你发现了什么?//The program gets two integers,and computes their sum,difference,product and quotient.//The first number:<第一个整数在此输入> //The second number:<第二个整数在此输入>//Results as follows://<第一个整数>+<第二个整数>=<和>//<第一个整数>-<第二个整数>=<差>//<第一个整数>*<第二个整数>=<积>//<第一个整数>/<第二个整数>=<商>#include<stdio.h>void main(){int a,b;printf("The program gets two integers,and computes their sum,difference,product and quotient.\n");printf("The first number:");scanf("%d",&a);printf("The second number");scanf("%d",&b);printf("Results as follows:\n");printf("%d+%d=%d\n",a,b,a+b);printf("%d-%d=%d\n",a,b,a-b);printf("%d*%d=%d\n",a,b,a*b);printf("%d+%d=%f\n",a,b,1.0*a/b); //做除法时要注意,除得的结果是实数}//2.2输入半径r的值,求出圆周长,圆面积#include<stdio.h>#define PI 3.14void main(){int r;float zhouchang,mianji;printf("please input r:");scanf("%d",&r);zhouchang=2*PI*r;mianji=2*PI*r*r;printf("zhouchang=%f\n",zhouchang);printf("mianji=%f\n",mianji);}//3.1如何实现下述输出要求?//A.输出整数1234,输出共占8位,数据左对齐。
C语言程序设计及实验指导练习及习题参考答案(8--10)
C语言程序设计及实验指导练习及习题参考答案(8--10) 8练习参考答案1、练习8-1.如果有定义:intm,n=5,某p=&m;与m=n等价的语句是BA.m=某p;B.某p=某&n;C.m=&n;D.m=某某p;8-2.设计一个程序计算输入的两个数的和与差,要求自定义一个函数um_diff(floatop1,floatop2,float某pum,float某pdiff),其中op1和op2是输入的两个数,某pum和某pdiff是计算得出的和与差。
解答:#includeintmain(void){floatop1,op2,um,diff;voidum_diff(floatop1,floatop2,float某pum,float某pdiff);printf(“inputop1andop2:“);canf(“%f%f”,&op1,&op2);um_d iff(op1,op2,&um,&diff);printf(“%f+%f=%f;%f-%f=%f\\n”,op1,op2,um,op1,op2,diff);return0;}voidum_diff(floatop1,floatop2,float某pum,float某pdiff){某pum=op1+op2;某pdiff=op1–op2;}8-3.两个相同类型的指针变量能不能相加?为什么?解答:不能。
因为指针变量是一种特殊的变量,指针变量的值存放的是所指向变量的地址,两个地址相加并不能保证结果为一个有效的地址值,因而在C语言中指针变量相加是非法的。
8-4.根据表8.2所示,这组数据的冒泡排序其实循环到第6遍(即n-2)时就已经排好序了,说明有时候并不一定需要n-1次循环。
请思考如何改进冒泡排序算法并编程实现(提示:当发现一遍循环后没有数据发生交换,说明已经排好序了)。
解答:设置一个标志变量flag,进入一轮循环前设置为0,在循环中有发生数据交换就改写flag值为1。
C语言实验答案(2-6)
x=10,y=10,z=10 x=8,y=10,z=16 c1=M,c2=4d,c3=115,c4=77 c1=M,c2=M,c3=M,c4=M c1=77,c2=77,c3=77,c4=77 c=m,c=109
(2)程序运行结果
输入:
1,2 3,4 5,6 7,6 a,b
运行一: 1 0,1,0,0
运行二: 2 0,0,1,1
运行三: 3 0,0,0,1
运行四: 4 1,0,0,0
运行五: 5 1,0,0,0
输入不同数据以后,a,b,c,d 的结果不一样,分析其原因主要在于:输入值不同, switch 语句进入的 case 分支不同;当分支语句中未出现 break 时 switch 语句会继 续继续进入下一 case 分支分支执行,直到遇到 break 或最后。
实验三
一、验证性试验 15M5.55
b=25,y=2.6,c2=N a= 15,b=25 x=5.550000,y=2.600000 c1=M,c2=N 在 scanf("%d%c%f",&a,&c1,&x);的输入中,由于输入字符型数据时空格会作为 有效输入字符处理,所以空格不能作为数据输入的分隔符,在输入 a 的值后,接 下来输入的应是一个字符型,若之间用空格则此空格将被视为一个字符,但若是 先输字符再输一个数,其间就可以用空格。 二、程序填空: ①a/b ②a%b ③quot,resi 三、程序改错: scanf("%f %f ",&x,&y) 改为 scanf("%d%d",&x,&y); printf("%d+%d=%d",x+y) 改为 printf("%d+%d=%d",x,y,x+y) ; (2) getchar(x) 改为 x=getchar() y=x-32 改为 y=x+32 四、设计性试:
C 语言程序设计实验答案_类与对象课案
实验04 类与对象(6学时)(第4章类与对象)一、实验目的二、实验任务4_1 声明一个CPU类。
包含等级(rank)、频率(frequency)、电压(voltage)等属性,有两个公有成员函数run、stop。
其中,rank为枚举类型CPU_Rank,声明为enum CPU_Rank{ P1=1, P2, P3, P4, P5, P6, P7 }; frequency为单位是MHz的整型数,voltage为浮点型的电压值。
观察构造函数和析构函数的调用顺序。
4_2 声明一个简单的Computer类。
有数据成员芯片(cpu)、内存(ram)、光驱(cdrom)等,有两个公有成员函数run和stop。
cpu为CPU类的一个对象,ram为RAM类的一个对象,cdrom为CDROM类的一个对象,声明并实现这个类。
4_3 声明一个表示时间的结构体。
可以精确表示年、月、日、小时、分、秒;提示用户输入年、月、日、小时、分、秒的值,然后完整地显示出来。
4_4(习题4-10)设计一个用于人事管理的People(人员)类。
考虑到通用性,这里只抽象出所有类型人员都具有的属性:number(编号),sex(性别)、birthday(出生日期)、id(身份证号)等。
其中“出生日期”声明为一个“日期”类内嵌子对象。
用成员函数实现人员信息的录入和显示。
要求包括:构造函数和析构函数、内联成员函数、组合。
三、实验步骤1.(验证)声明一个CPU类,观察构造函数和析构函数的调用顺序。
首先声明枚举类型CPU_Rank,例如enum CPU_Rank{ P1=1, P2, P3, P4, P5, P6, P7 },再声明CPU类,包含等级(rank)、频率(frequency)、电压(voltage)等私有数据成员,声明成员函数run和stop,用来输出提示信息,在构造函数和析构函数中也可以输出提示顺序。
在主程序中声明一个CPU的对象,调用其成员函数,观察类对象的构造与析构顺序,以及成员函数的调用。
C语言程序设计 上机实验指导与习题 参考答案(第四版)
C 语言程序设计上机实验指导与习题参考答案(第四版)(学生改编)实验 1:C语言程序初步一、实验目的(1)了解所用的计算机系统的基本操作方法,学会独立使用该系统。
(2)了解在该系统上如何编辑、编译、连接和运行一个 C程序。
(3)通过运行简单的 C 程序,初步了解 C程序的特点。
(4)在教师的指导下,学会使用在线评判系统。
二、实验内容1.运行第一个 C 程序题目:ThefirstCProgram将下列程序输入visualc ,编译、连接和运行该程序。
includequotstdio.hquotmain printfquotThefirstCProgramnquot具体操作步骤(1)在编辑窗口中输入程序。
(2)保存程序,取名为a1.c。
(3)按照第一章中介绍的方法,编译、连接和运行程序。
,则该题完成。
4按照第三章介绍的方法,将代码提交到在线评判系统,系统返回“通过”2.在在线评判系统中提交实现了计算 ab 功能的程序题目 1001:计算ab由键盘输入两个整数,计算并输出两个整数的和。
实现该功能的程序如下,inclu dequotstdio.hquotmain int ab scanfquotddquotampaampbprintfquotdquotab(1)在程序编辑窗口中输入程序。
(2)保存程序,取名为a2.c。
(3)按照前二章中介绍的方法,编译、连接和运行程序。
(4)在程序运行过程中,输入 15 30↙↙表示输入回车符(5)如果看到如下输出结果,则表明1530 的结果正确,如果得不到如下结果,则需检查并更正程序。
45(6)按照第三章中介绍的方法进入在线评判系统。
(7)显示题目列表,点击题号为 1001,题名为“计算ab”的题目。
(8)查看完题目要求后,点击页面下端的“sumbit” ,参照第二章提交程序的方法提交程序a2.c。
(9)查看评判结果,如果得到“accepted”则该题通过,否则返回第一步检查程序是否正确。
c语言程序设计实验与习题答案
c语言程序设计实验与习题答案C语言程序设计实验与习题答案C语言是一种广泛使用的程序设计语言,它具有高效、灵活和强大的特点,因此在计算机科学和工程领域中得到了广泛的应用。
在学习C语言的过程中,实验和习题是非常重要的一部分,通过实验和习题的完成,可以加深对C语言的理解和掌握。
在C语言程序设计实验中,通常会涉及到一些基本的概念和技术,比如变量、数据类型、运算符、控制结构、函数、指针等。
通过实验,学生可以学习如何使用这些概念和技术来解决实际问题,提高编程能力和解决问题的能力。
同时,习题也是非常重要的,通过习题的完成,可以巩固对C语言知识的掌握,并且可以提高解决问题的能力。
在习题中,通常会涉及到一些常见的编程问题,比如求解数列、排序算法、字符串处理、文件操作等,通过解决这些问题,可以提高学生的编程能力和解决问题的能力。
为了帮助学生更好地完成C语言程序设计实验和习题,下面我们提供一些实验和习题的答案,供学生参考:实验一:变量和数据类型```c#include <stdio.h>int main() {int a = 10;float b = 3.14;char c = 'A';printf("a = %d\n", a);printf("b = %f\n", b);printf("c = %c\n", c);return 0;}```实验二:运算符和表达式```c#include <stdio.h>int main() {int a = 10, b = 5;int sum, diff, product, quotient, remainder; sum = a + b;diff = a - b;product = a * b;quotient = a / b;remainder = a % b;printf("sum = %d\n", sum);printf("diff = %d\n", diff);printf("product = %d\n", product);printf("quotient = %d\n", quotient);printf("remainder = %d\n", remainder);return 0;}```通过以上实验和习题的答案,希望能够帮助学生更好地理解和掌握C语言的知识,提高编程能力和解决问题的能力。
C语言实验报告第3章答案
3.2基础实验一、程序分析1.以下程序若输入’a’,则输入格式为:__c1=a____;运行结果为:___a,A↙_____。
#include<stdio.h>intmain( ){char c1,c2;scanf(“c1=%c”,&c1);c2=c1-32;printf(“%c,%c\n”,c1,c2);return 0;}2.以下程序如果使得a的值为2、b的值为3,则输入格式为:_a=2,b=3__;运行结果为:_2,3↙_。
#include<stdio.h>intmain( ){ int a,b;scanf(“a=%d,b=%d”,&a,&b);printf(“%d,%d\n”,a,b);return 0;}3.以下程序若输入12.3、7.6、1.1,则输入格式为:_12.3 7.6 1.1__;运行结果为:_aver=7.00___。
#include<stdio.h>intmain( ){ floata,b,c,d;scanf(“%f%f%f”,&a,&b,&c);d=(a+b+c)/3;printf(“aver=%.2f”,d);return 0;}二、程序填空1.输入一个四位整数,求各位数字之和(如1234,则结果为1+2+3+4=10)。
若输入3562,则运行结果为:___3+5+6+2=16↙____________。
#include <stdio.h>intmain( ){ int n,a,b,c,d,m;scanf(“%d”,&n);a=n%10;b=(n/10)%10;c=(n/100)%10;d=__n/1000________;m=__a+b+c+d________;printf(“%d+%d+%d+%d=%d\n ”, d,c,b,a,m);return 0;}2.给定一个华氏法表示的温度值,将其转换为摄氏法表示的温度,转换公式为则运行结果为:__f=64.00,c=17.78↙__。
重庆理工大学C语言程序实验报告
重庆理工大学C语言程序实验报告《程序设计基础C》实验报告教学班级:学号:姓名:课程教师:实验辅导教师:重庆理工大学计算机学院2013年2月实验5 循环程序设计教学班级:学号:姓名:实验日期:2013年5月28日实验地点:4-210(机房)实验成绩:___________一、实验目的(1) 了解C语言循环结构的使用范围。
(2) 学会正确使用逻辑运算符和逻辑表达式。
(3) 熟练掌握C语言的三种循环结构:whilc语句、do……whilc语句、for语句的特点和使用方法。
(4) 能够编写一些有实际应用意义的循环结构程序。
二、实验内容1.基本内容题目1:计算1-3+5-7+......-99+101的值。
(提示:注意符号的变化)#includevoid main(){ int i,t=1,s=0; /* t标识正负符号*/for (i=1;i<101; i+=2) /*error*/{ s+=i*t;t= -t;}printf("s=%d\n",s);}①请改错,并运行程序。
#includevoid main(){ int i,t=1,s=0;for (i=1;i<=101; i+=2){ s+=i*t;t= -t;}printf("s=%d\n",s);}②分别用do……while语句和while语句改写以上程序。
#includevoid main(){ int i=1,t=1,s=0; /* t标识正负符号*/do {s+=i*t;i++;t=-t;}while(i<=101);printf("s=%d\n",s);}#includevoid main(){ int i=1,t=1,s=0; /* t标识正负符号*/while(i<=101){s+=i*t;i++;t=-t;}printf("s=%d\n",s);}题目2:分析程序,运行时输入:24579(注:表示回车换行)。
