c语言课后答案C语言课后题,调用3个函数求2次方程的根,编写程序如下

c语言课后答案  时间:2021-05-29  阅读:()

c语言程序设计答案 输入一个华氏温度,要求输出摄氏温度,公式为C=5%9(f-32)输出要有文字说明取两位数

代码: #include int main(void) { float c,f; printf("请输入一个华氏温度: "); scanf("%f",&f); c=(f-32)*5/9; printf("对应的摄氏温度是:%.2f ",c); } 图:

谁能提供点C语言的试题给我,最好能有答案的,非常感谢!

本试卷共5页共5大题,考生在作答前应先检查是否有缺页、白页、以防漏答。

查对无误后,请先填写学号、姓名、专业,再答卷。

一、单项选择题(在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号填在题干的括号内。

(共10小题,每小题2分,共20分)。

1、不是C语言基本数据类型的是( )。

A、指针类型 B、整型 C、字符型 D、实型 2、设有:int a=3, b= 4, c= 5,x , y; 表达式(x=a)&&(y=b)&&0的值为( )。

A、1 B、0 C、3 D、4 3、设有语句 int a=3 ; 则执行了语句 a+ = a - = a后,变量a 的值是( )。

A、3 B、0 C、9 D、-12 4、执行以下程序后,y的值是( ) main() { int a[]={2,4,6,8,10}; int y=0,i,*p; p=&a[0]; for(i=0;i<5;x++) y+=*(p+i); printf(“%d ”,y); } A、17 B、18 C、19 D、30 5、有定义语句:float a[4];则分配给数组a的空间为( )字节。

A、 20 B、 12 C、 16 C、10 6、以下描述错误的是( )。

A、break语句可用于do~while语句 B、break语句和continue语句的作用是一样的 C、在循环语句中使用break语句是为了跳出循环,提前结束循环 D、在循环语句中使用continue语句是为了结束本次循环,而不终止整个循环 7、C语言中规定,if语句的嵌套结构中,else总是( )。

A、与最近的if 配对 B、与第一个if 配对 C、按缩进位置相同的if配对 D、与最近的且尚未配对的if 配对 8、说明语句“int (*p)( ); ”的含义是( ) 。

A、p是一个指向一维数组的指针变量 B、p是指针变量,指向一个整型数据 C、p是一个指向函数的指针,该函数返回一个int型数据 D、以上都不对 9、以下对二维数组c的正确声明是 ( ) 。

A、int c[3][ ]; B、int c(3,4); C、int c(2)(2); D、int c[3][2]; 10、下述程序段执行后输出结果是( )。

int x=100, y=200; printf ("% d", (x, y)); A、100 B、200 C、100,200 D、编译出错 二、填空题。

(共10空,每空1分,共10分 ) 1、C语言提供的三种逻辑运算符是 && 、 || 和!; 2、函数的返回值是通过函数中的 return 语句获得的。

3、在"int a[ ][3]={{1},{3,2},{4,5,6},{0}};"定义后,a[2][2]的值为_6__ _; 4、对于"int *pa[5];" pa是一个具有5个元素的_数组指针_,每个元素是一个指向int型变量的__指针__; 5、单向链表的尾节点next指针应赋值__ NULL___; 6、for(int x=0,y=1;x&&y〈=5;y++)中循环体执行的次数是 0 。

7、int a[5];数组a的首地址为2000,则元素a[1]的地址为 2002 ,元素a[2]的地址为 2004 。

三、程序填空题。

(共8空,每空2分,共16分 ) 1、以下程序中子函数返回数组s中最大元素,数组中元素的个数由t传入。

Int findmax(int s[],int t) { int m,n,*p; max=0; p= s ; for(n=1;n<t;n++) if(*(p+max)<*(p+n)) max=n ; return(*(p+max));; } Void main( ) { int a[10]; int i; for(i=0;i<10;i+=) scanf(“%d”,&a[i]); printf(“%d”,findmax{a,10}); } 2、以下程序完成计算1-1/2+1/3-1/4+..前n 项和的功能,请填空。

#include <stdio.h> int main( ) { int i, n, flag; float sum; scanf("%d", &n); flag= 1 ; sum=0; for(i=1;i<=n; i++ ) { sum+=(float)flag/i; flag=-flag ; } printf("%.3f ", sum); } 3、以下程序的功能是从键盘输入n个整数,统计其中正数、0、负数的个数,请填空。

#include <stdio.h> int main( ) {int a, i, count1,count2,count3; count1=cout2=count3=0 ; for(i=1;i<=n;i++) { scanf(“%d”, &a); If(a>0) count1++; Else if(i==0) count2++ ; Else count3++; } printf(“正数:&d个,零:%d个,负数:%d个 ”, count1,count2,count3); } 四、运行程序结果。

(共4小题,每小题6分,共24分) 1、运行时输入100,200,请写出程序运行结果。

Void main( ) { int a, b,*p1,*p2 ; scanf ( " % d ", & a , ); scanf ( " % d ", & b ); printf(“a=%d,b=%d”,a,b); p1=&a; p2=&b; swap ( p1,p2); printf(“a=%d,b=%d”,a,b); } Void swap ( int *p1, *p2) { int t ; t=*p1; *p1=*p2; *p2=t; } 运行结果为: a=100,b=200a=200,b=100 2、运行时若输入1 2 3 4 -5<回车>,写出程序运行结果。

#include <stdio.h> int main( ) { int x, sum; scanf("%d", &x); sum=0; while(x>0) { if(x%2!=0) sum+=x; scanf("%d", &x); } printf("sum=%d ", sum); } 运行结果为: sum=4 3、写出程序运行结果。

#include<stdio.h> int max(int a,int b) { int c; c=a>b?a:b; return(c); } int min(int a,int b) {int c; c=a<b?a:b; return(c); } void main() { int a=2,b=6; printf("max=%d ",max(a,b)); printf(“min=%d ”,min(a,b)); } 运行结果为: max=6 Min=2 4、运行时若输入4 1 2 3 0<回车>,写出程序运行结果。

#include <stdio.h> int main( ) { int i, index, n; int a[10]; scanf("%d", &n); for(i=0; i<n; i++) scanf("%d", &a[i]); index=0; for(i=1;i<n;i++) { if(a[i]<a[index]) index=i; } printf("min=%d,index=%d ", a[index],index); } 运行结果为: min=0,index=3 五、程序设计.( 共3小题,每小题10分,共30分) 1、输入10个字符串,将其按由小到大排序。

#include<stdio.h> #include<string.h> Void main( ) { char c[10][20],t[10]; Int I, j,k; For(i=0;i<10;i++) Gets(c[i]); For(i=0;i<9;i++) { k=I; For(j=i+1;j<10;j++) If(strcmp(c[k],c[j])>0) k=j; If(k!=i) { strcpy(t,c[k]); strcpy(c[k],c[i]); strcpy(c[i],t); } For(i=0;i<10;i++) Puts(c[i]); } 2、求出1!+2!+3!+…+8!。

#include<stdio.h> Float fact(int n) { float f; If(n==1||n==0) f=1; Else f=fact(n-1)*n; Return(f); } Void main( ) {float sum; Int I; Sum=0; For(i=1;i<=8;i++) Sum+=fact(i); Printf(“sum=%d ”,sum); } 3、请写出在一个单向链表中插入一个结点的函数: struct student *insert(struct student *head, struct student *stud) (说明:链表结点有两个成员:数据成员data和指针成员next)。

#include <stdio.h> #include <malloc.h> #define NULL 0 #define LEN sizeof(struct student) struct student { int data; struct student *next; }; int n; struct student *insert(struct student *head, struct student *stud) {struct student *p0,*p1,*p2; p1=head;p0=stud; if(head==NULL) {head=p0; p0->next=NULL;} else{while((p0->data>p1->data) && (p1->next!=NULL)) {p2=p1; p1=p1->next;} if(p0->data<=p1->data) {if(head==p1) head=p0; else p2->next=p0; p0->next=p1;} else {p1->next=p0; p0->next=NULL;}} n=n+1; return(head); }

c语言程序设计教程第二版课后习题 王敬华电子版

数据结构 (c语言版)胡学纲 课后习题 答案谢谢了,大神帮忙啊

数据结构课程第一章部分习题解答 第一章 绪论 1-4.什么是抽象数据类型?试用C++的类声明定义“复数”的抽象数据类型。

要求 (1) 在复数内部用浮点数定义它的实部和虚部。

(2) 实现3个构造函数:缺省的构造函数没有参数;第二个构造函数将双精度浮点数赋给复数的实部,虚部置为0;第三个构造函数将两个双精度浮点数分别赋给复数的实部和虚部。

(3) 定义获取和修改复数的实部和虚部,以及+、-、*、/等运算的成员函数。

(4) 定义重载的流函数来输出一个复数。

【解答】 抽象数据类型通常是指由用户定义,用以表示应用问题的数据模型。

抽象数据类型由基本的数据类型构成,并包括一组相关的服务。

//在头文plex.h中定义的复数类 #ifndef plex_h_ #define plex_h_ #include lex { public:plex ( ){ Re = Im = 0; } //不带参数的构造函数plex ( double r ) { Re = r; Im = 0; } //只置实部的构造函数plex ( double r, double i ) { Re = r; Im = i; } //分别置实部、虚部的构造函数 double getReal ( ) { return Re; } //取复数实部 double getImag ( ) { return Im; } //取复数虚部 void setReal ( double r ) { Re = r; } //修改复数实部 void setImag ( double i ) { Im = i; } //修改复数虚部plex & operator = (plex & ob) { Re = ob.Re; Im = ob.Im; } //复数赋值plex & operator + (plex & ob ); //重载函数:复数四则运算plex & operator – (plex & ob );plex & operator * (plex & ob );plex & operator / (plex & ob ); friend ostream & operator << ( ostream & os,plex & c ); //友元函数:重载<< private: double Re, Im; //复数的实部与虚部 }; #endif //复数plex的相关服务的实现放在C++源文plex.cpp中 #include #include #include plex.h”plex &plex :: operator + (plex & ob ) { //重载函数:复数加法运算。

plex * result = plex ( Re + ob.Re, Im + ob.Im ); return *result; }plex &plex :: operator – (plex & ob ) { //重载函数:复数减法运算plex *result = plex ( Re – ob.Re, Im – ob.Im ); return * result; }plex &plex :: operator * (plex & ob ) { //重载函数:复数乘法运算plex *result = plex ( Re * ob.Re – Im * ob.Im, Im * ob.Re + Re * ob.Im ); return *result; }plex &plex :: operator / (plex & ) { //重载函数:复数除法 查看更多答案>>

有关C语言的一些简单题,并要求答案

数组实际上就是一组相同数据类型变量。

如果一个数组中的一个变量也是一个数组,就构成了二维数组。

用同样的方法可以构成多维数组。

在使用数组以前需要定义一个数组。

可以用一个实例来理解数组。

假设在一个程序中要存储100个人的年龄,可以写成下面代码来定义100个整型变量。

#include void main() { int a[10]; int i; for(i=0;i<=9;i++) { a[i]=i+10; } for(i=0;i<=9;i++) { printf("%d ",a[i]); } } 在c语言中,函数是程序的基本组成单位,因此可以很方便地用函数作为程序模块来实现c语言程序。

利用函数,不仅可以实现程序的模块化,程序设计得简单和直观,提高了程序的易读性和可维护性,而且还可以把程序中普通用到的一些计算或操作编成通用的函数,以供随时调用,这样可以大大地减轻程序员的代码工作量。

函数是c语言的基本构件,是所有程序活动的舞台。

例如:printf,scanf,getch,putch,fopen等都是C语言里面的函数 指针是指向内存单元的地址.不同类型的指针指向不同类型的地质单元。

如:int a; a=100; 这样就把整型常量赋给了变量a。

但是如果写成这样:a=123.33;就会出问题,最后输出变量a的值结果是123。

现在说到指针,其实地址值也是一个整型数,如某某变量的地址值为36542,说明这个变量被分配在内存地址值为36542的地方。

能不能这样进行推理,既然地址值也是整型数,整型变量正好可以用来存放整型数,那不是一个整型变量可以用来存放地址的值吗。

程序写成下面这样: int a,b; a=&b; 很明显,这样写是错误的。

原因在于不能简单地把地址理解为整型数。

应有这样的对应关系: 地址值<--->指针; 整型数<--->int 型变量。

所以有这样的说法:“指针就是地址”(指针就是存放地址值的一种数据类型) 下面是一段正确的程序: int a,*p; p=&a; /*把变量a的地址值赋给指针p*/ 指针是指向内存单元的地址.不同类型的指针指向不同类型的地质单元。

是所指数据类型的地址!指针可以指向数据,也可以指向函数等!

C语言课后题,调用3个函数求2次方程的根,编写程序如下

#include<stdio.h> #include<math.h> void?zero(float?a,float?b); void?left(); void?right(float?a,float?b,float?c); void?main() { float?a,b,c,d; printf("请输入a,b,c的值: "); scanf("%f?%f?%f",&a,&b,&c); d=b*b-4*a*c; if(d==0)zero(a,b); if(d<0)left(); if(d>0)right(a,b,c); } void?zero(float?a,float?b) { printf("%f",-b/2*a); } void?left() { printf("no?roots! "); } void?right(float?a,float?b,float?c) { float?x1,x2; x1=(-b+sqrt(b*b-4*a*c))/(2*a); x2=(-b-sqrt(b*b-4*a*c))/(2*a); printf("%f?%f? ",x1,x2); }

TabbyCloud周年庆&七夕节活动 美國INAP 香港CN2

TabbyCloud迎来一周岁的生日啦!在这一年里,感谢您包容我们的不足和缺点,在您的理解与建议下我们也在不断改变与成长。为庆祝TabbyCloud运营一周年和七夕节,TabbyCloud推出以下活动。TabbyCloud周年庆&七夕节活动官方网站:https://tabbycloud.com/香港CN2: https://tabbycloud.com/cart.php?gid=16购买链...

wordpress专业外贸建站主题 WordPress专业外贸企业网站搭建模版

WordPress专业外贸企业网站搭建模版,特色专业外贸企业风格 + 自适应网站开发设计 通用流行的外贸企业网站模块 + 更好的SEO搜索优化和收录 自定义多模块的产品展示功能 + 高效实用的后台自定义模块设置!采用标准的HTML5+CSS3语言开发,兼容当下的各种主流浏览器: IE 6+(以及类似360、遨游等基于IE内核的)、Firefox、Google Chrome、Safari、Opera...

RackNerd($199/月),5IP,1x256G SSD+2x3THDD

我们先普及一下常识吧,每年9月的第一个星期一是美国劳工节。于是,有一些服务商会基于这些节日推出吸引用户的促销活动,比如RackNerd有推出四款洛杉矶和犹他州独立服务器,1G带宽、5个独立IP地址,可以配置Windows和Linux系统,如果有需要独立服务器的可以看看。第一、劳工节促销套餐这里有提供2个套餐。两个方案是选择犹他州的,有2个方案是可以选择洛杉矶机房的。CPU内存SSD硬盘配置流量价格...

c语言课后答案为你推荐
域名怎么注销域名过期或者不再使用后,如何快速注销备案号查看硬盘大小用开始——运行然后输什么命令可以查看察看硬盘多大?阿里云服务器怎么重装系统怎么重装系统?腾讯云建网站注册域名后怎么建网站云服务器搭建华为云服务器怎么搭建FTP共享虚拟主机基础版怎么创建虚拟机与主机的共享vds是什么汽车vin码代表什么199美金199美元是人民币的多少???域名分类域名如何分类?cdn的作用CDN制作的用途是什么
上海vps 如何查询ip地址 免费com域名申请 net主机 host1plus 国外服务器 gitcafe 42u标准机柜尺寸 大容量存储 彩虹ip 英文站群 tna官网 登陆空间 监控服务器 photobucket 域名转入 如何登陆阿里云邮箱 好看的空间 闪讯网 国外免费网盘 更多