哈工大C语言实验题

合集下载

哈尔滨工业大学2003-2006年C语言 考试题

哈尔滨工业大学2003-2006年C语言 考试题

哈工大2003年春季学期C语言考试题说明:请将答案写在答题纸的相应题号后面!!!!!一、填空题:(24分每空1.5分)1.已知:int *p,a; 则语句p=&a;中的运算符&的含义是( 1 )。

2.凡在函数体内没有明显存储类别说明的变量是( 2 )。

3.已知:struct{ int k;char c;float a;}test; 则sizeof(test)的值是(3 )。

4.程序填空:(1)下面的程序是main函数利用函数abcd来交换main中的两个变量的值。

# include <stdio.h>main(){float x=10,y=20;abcd( 4 );printf(“%f,%f”,x,y);}abcd(x,y)( 5 );{float temp;temp=( 6 );( 7 );( 8 );}(2)下面的程序是使用冒泡法对输入的10个数据从小到大排序。

排好序的10个数分两行输出。

#include <stdio.h>main(){ ( 9 );int j,k;printf(“ input 10 numbers please \n”);for(j=0;( 10 );j++)scanf(“%f”,&a[j]);printf(“\n”);for(j=0;( 11 );j++)for(k=0;( 12 );k++)if( 13 ){ x=a[k];( 14 );a[k+1]=x;}printf(“The sorted 10 numbers:\n”);for(j=0;( 15 );j++){ if( 16 )printf(“\n”);printf(“%f\t”,a[j]);}printf(“\n”);}二、单项选择题:(20分每题2分)1.C语言中基本数据类型包括( )。

A. 整型、实型、逻辑型B. 整型、实型、字符型C. 整型、字符型、逻辑型D. 整型、实型、逻辑型、实型2.已知int i,a; 执行语句”i=(a=2*3,a*5),a+6;”后,变量a的值是()。

哈工大C语言程序设计习题ex6

哈工大C语言程序设计习题ex6

习题66.3 阅读程序,按要求在空白处填写适当地表达式或语句,使程序完整并符合题目要求.(1)下面程序模拟了骰子地6000次投掷,用rand函数产生1~6之间地随机数face,然后统计1~6每一面出现地机会(概率)存放到数组frequency中.(2)从键盘输入10个整型数据,放入数组a 中,求其最大值、最小值及其所在元素地下标位置,并输出.(3)下面程序地功能是从键盘输入一行字符,统计其中有多少单词.假设单词之间以空格分开.(4)下面地函数Squeeze(char s[],char c)地功能是删除字符串s中所出现地与变量c相同地字符.(5)下面地函数MyStrcmp()用于实现函数strcmp()地功能,将两个字符串s和t进行比较,然后将两个字符串中第一个不相同字符地ASCII码值之差作为函数值返回.6.4 编程实现从键盘任意输入20个整数,统计非负数个数,并计算非负数之和.6.5 从键盘任意输入10个整数,用函数编程实现将其中最大数与最小数地位置对换后,再输出调整后地数组.6.6 输入5×5阶地矩阵,编程实现:(1)求两条对角线上地各元素之和.(2)求两条对角线上行、列下标均为偶数地各元素之积.6.7 编程打印如下形式地杨辉三角形.11 11 2 11 3 3 11 4 6 4 11 5 10 10 5 16.8 编程将下列矩阵中地元素向右移动一列,最右一列移至第一列.1 4 68 10 126.9 利用公式c ij=a ij+b ij计算m×n阶矩阵A和m×n阶矩阵B之和.已知a ij为矩阵A地元素,b ij 为矩阵B 地元素,c ij 为矩阵C 地元素(i =1,2,…,m ;j =1,2,…,n ).*6.10 利用公式c ij =∑=nk ik a 1*b kj 计算矩阵A 和矩阵B 之积.已知a ij 为m ×n 阶矩阵A 地元素(i =1,2,…,m ;j =1,2,…,n ),b ij 为n ×m 阶矩阵B 地元素(i =1,2,…,n ;j =1,2,…,m ),c ij 为m ×m 阶矩阵C 地元素(i =1,2,…,m ;j =1,2,…,m ).6.11 输入一行字符,统计其中地英文字符、数字字符、空格和其他字符地个数.6.12 编写一个函数Inverse(),实现将字符数组中地字符串逆序存放地功能.6.13 不用函数strcat(),编程实现字符串连接函数strcat()地功能,将字符串srcStr 连接到字符串dstStr 地尾部.版权申明本文部分内容,包括文字、图片、以及设计等在网上搜集整理.版权为个人所有This article includes some parts, including text, pictures, and design. Copyright is personal ownership.用户可将本文地内容或服务用于个人学习、研究或欣赏,以及其他非商业性或非盈利性用途,但同时应遵守著作权法及其他相关法律地规定,不得侵犯本网站及相关权利人地合法权利.除此以外,将本文任何内容或服务用于其他用途时,须征得本人及相关权利人地书面许可,并支付报酬.Users may use the contents or services of this article for personal study, research or appreciation, and othernon-commercial or non-profit purposes, but at the same time, they shall abide by the provisions of copyright law and other relevant laws, and shall not infringe upon the legitimate rights of this website and its relevant obligees. In addition, when any content or service of this article is used for other purposes, written permission and remuneration shall be obtained from the person concerned and the relevant obligee.3 / 6转载或引用本文内容必须是以新闻性或资料性公共免费信息为使用目地地合理、善意引用,不得对本文内容原意进行曲解、修改,并自负版权等法律责任.Reproduction or quotation of the content of this article must be reasonable and good-faith citation for the use of news or informative public free information. It shall not misinterpret or modify the original intention of the content of this article, and shall bear legal liability such as copyright.5 / 6。

哈工大 C语言实验报告(答案)

哈工大 C语言实验报告(答案)

实验1简单C 程序设计2、将下列由程序流程图描述的算法,转换为C 源代码并填写到图1-3b 框中,然后输入计算机并运行后并分析其运行结果(本小题2分)。

图1-3a 程序流程图图1-3bC 源程序3、项目编程(本小题12分)(1)请向计算机输入a,b,c 三个值,经过程序处理后,要求输出其中最大的一个。

/*C 语言源代码*/main(){}项目要求:①画出程序流程图;②根据流程图编写程序图1-4a 程序流程图图1-4b C 源程序(2)请向计算机输入a,b,c 三个值,经过程序处理后,要求按值从小到大输出。

项目要求:①画出程序流程图;②根据流程图编写程序/*输出最大值*/main(){}项目提示:①可采用if结构;②a,b,c由scanf函数输入程序流程图/*将a,b,c三个值由小到大输出*/main(){}1-5a程序流程图图1-5b C源程序(3)编程实现打印下列由字母组成的树形。

说明:本项目编程的知识点是让学生对双重循环语句结构的理解,清楚双重循环的特点(即当外循环变量中的值变化一次时,则内循环变量中的值要变化若干次)。

提示:可用外循环变量代表行数;内循环变量代表需打印字符的个数。

难点:①字符个数是按奇数变化递增②左右边界字符打印的位置图1-6a字母A-G组成的树形/*打印图形*/main(){}图1-6b C源程序(4)设计报选体育科目统计程序设某学校在新生入学时,需报选体育选修科目。

体育科目包括:篮球、排球、体操、兵乓球和网球。

请为某班级(30人)统计报选各体育科目人数。

项目要求:①画出程序流程图;②根据流程图编写源程序项目提示:可采用switch与for结构程序流程图C语言源代码main(){}图1-7a程序流程图图1-7b C 源程序实验2数组与排序五、项目编程(本题12分,每小题4分)1、将下列一组数读入到a 数组中,然后从a数组中找出其中最大的元素并与第一个数互换;然后从a数组中找出最小的元素并与最后一个数互换,而其余元素的位置不变。

哈工大c语言 练习题

哈工大c语言 练习题

求用户输入的两个数的商,程序运行时,以如下格式输入数据:Input two integers:4 2↙请改正程序中的错误,使它能得出正确的结果。

#include <>main(){int a, b, c;printf("Input two integers:");scanf("%d,%d", &a, &b);c = a\b;printf("The quotient of a and b is :%d", c);}# include <>int main (){int a,b,c;printf ("Input two integers:");scanf ("%d %d",&a,&b);c=a/b;printf ("The quotient of a and b is :%d\n",c);return 0;}使用const常量定义圆周率pi=,编程从键盘输入圆的半径r,计算并输出圆的周长和面积。

输出的数据保留两位小数点。

输入格式要求:"%lf"提示信息:"Input r:"输出格式要求:"printf WITHOUT width or precision specifications:\n""circumference = %f, area = %f\n""printf WITH width and precision specifications:\n""circumference = %, area = %\n"程序运行示例如下:Input r:printf WITHOUT width or precision specifications:circumference = , area =printf WITH width and precision specifications:circumference = , area =#include <>int main(){const double PI=;double r;printf("Input r:");scanf("%lf", &r);printf("printf WITHOUT width or precision specifications:\n");printf("circumference = %f, area = %f\n",2*PI*r,PI*r*r);printf("printf WITH width and precision specifications:\n");printf("circumference = %, area = %\n",2*PI*r,PI*r*r);return 0;}写一个程序,将接收的华氏温度转换为对应的摄氏温度。

哈工大c语言试题

哈工大c语言试题

哈工大 2008 年 秋 季学期C 语言 试题考成绩和卷面笔试成绩各自所占比例折合后累加计算。

一、填空题(6分,每题1分)1.设变量定义为“int x,y[10];”,则“_________”与“*(y+x)”等效。

2.如果在程序中使用了strcmp 库函数,则程序前面要写#include "________"。

3.1.37×1042在C 语言中写作________4.把C 语言源程序翻译成机器语言目标程序的过程称为“__________”,翻译得到的目标程序扩展名为“__________”。

5.已知x 是double 型变量,“scanf("________",&x);”用于从键盘读取数据存放到x 中。

6. 已知:“#define M(x,y) x*y ”,则表达式“M(5+4,3-1)”的值为________。

二、单项选择题:(10分,每题2分)1.判断字符串s1与字符串s2相等,应当使用: 。

A) if (s1 = s2)B) if (strcmp(s1, s2))C) if (!strcmp(s1, s2)) D) if (strcmp(s1, s2) = 0)2.用“if(0<x<3) x=x+1;”实现“如果x 在0到3之间则将其值加1”的操作,________。

(A) 正确(B) 有语法错误 (C) 有逻辑错误 (D) 有连接错误3.#include<stdio.h>#include<string.h> main() {printf("%d\n", strlen("IBM\n012\t\"\\\0")); }则程序运行后的输出结果是。

A) 10 B) 11 C) 16 D) 124.函数定义的首部写作“int func( )”,x、y是int型变量,则__________是正确的调用。

C语言课后实验设计题目及答案

C语言课后实验设计题目及答案

C语⾔课后实验设计题⽬及答案C语⾔实验题⽬及答案1、实验项⽬⼀ C程序的编辑、编译、连接和运⾏题⽬:编写程序,要求屏幕上显⽰如下信息:***********************This is a C program .***********************程序:#includevoid main(){printf(“***********************\n”);printf(“This is a C programn .\n”);printf(“***********************\n”);}实验项⽬⼆数据类型、运算符、表达式题⽬(1)程序填空:输⼊1 个实数x,计算并输出其平⽅根(保留1 位⼩数)。

填空1.double x,root;2.root=sqrt(x);(2)输⼊⼀个⼤写英⽂字母,输出相应的⼩写字母。

填空1.ch=ch+32;1、#include "stdafx.h"#include "stdio.h"#include "math.h"int main(int argc, char* argv[]){printf("This is a Cprogram\n");return 0;}#include "math.h"int main(int argc, char* argv[]) {double x;printf("x=");scanf("%lf",&x);printf("%lf\n",sqrt(x));return 0;}2、实验项⽬三顺序结构程序设计题⽬(1)编写程序,输⼊三⾓形的三边长a、b、c,求三⾓形⾯积area。

(2)设圆半径r=1.5,圆柱⾼h=3,求圆周长、圆⾯积、圆球表⾯积、圆球体积、圆柱体积。

哈工大C语言实验题

哈工大C语言实验题

哈工大C语言实验题————————————————————————————————作者:————————————————————————————————日期:ﻩQ308.(10分)第5章实验2:体型判断。

医务工作者经广泛的调查和统计分析,根据身高与体重因素给出了以下按“体指数”进行体型判断的方法。

体指数计算公式是:t = w/(h*h)其中:t是体指数;w是体重,其单位为千克;h是身高,其单位为米。

根据给定的体指数t计算公式,可判断你的体重属于何种类型:当t<18时,为低体重;当18≤t<25 时,为正常体重;当25≤t<27 时,为超重体重;当t≥27 时,为肥胖。

****输入提示信息格式:"Please enter h,w:\n"****输入数据格式要求:"%f,%f"(先读入身高,再读入体重,身高以米读入,体重以千克读入)****输出数据格式要求:当 t<18 时,输出:"Lower weight!\n"当18≤t<25 时,输出:"Standard weight!\n"当25≤t<27时,输出:"Higher weight!\n"当t≥27 时, 输出:"Too fat!\n"#include <stdio.h>#include <stdlib.h>main(){float t,w,h;printf("Please enter h,w:\n"); scanf("%f,%f",&h,&w);t = w/(h*h);if(t<18)printf("Lower weight!\n");else if(t>=18&&t<25)printf("Standardweight!\n");else if(t>=25&&t<27)printf("Higher weight!\n");elseprintf("Too fat!\n");return 0;}Q586.(10分)编写一个程序,输入年份和月份,判断该年是否是闰年,并根据给出的月份判断是什么季节和该月有多少天?(闰年的条件是年份能被4整除但不能被100整除,或者能被400整除;规定3~5月为春季,6~8月为夏季,9~11月为秋季,1、2和12月为冬季)。

哈工大c语数据结构作业

哈工大c语数据结构作业

第—部分数据结构第一章绪论计算机应用相当普遍,计算机的应用已不再局限于科学计算,而更多用于控制、管理及数据处理等非数值计算的处理工作。

与此相应,计算机加工处理的对象由纯粹的数值发展到字符、表格和图像等各种具有一定结构的数据,这就给程序设计带来一些新的问题。

为了编写出一个好的程序,必须分析待处理的对象的特性以及各处理对象之间存在的关系。

这就是数据结构学科形成和发展的背景。

1.1 数据结构一般来说,用计算机解决一个问题时,需要经过如下几个步骤:首先要从具体问题中抽象出一个适当的数学模型,然后设计一个对此数学模型进行操作的算法,最后编写出程序直至得到解答。

例l:图书馆的书目检索系统。

当你想借阅一本参考书时,你需要到图书馆去查阅图书目录卡片。

如果利用计算机实现自动检索,则计算机处理的对象便是这些目录卡片上的书目信息,列在卡片上的一本书的书目信息可由登录号、书名、作者名、分类号、出版单位和出版时间等各项组成。

每一本书都有唯一的一个登录号。

在书目自动检索系统中建立一张按登录号顺序排列的书目文件,如图 1.1,这个文件就是书目自动检索系统中的数学模型。

计算机的主要操作就是按照某个特定要求(如给定书名)对书目文件进行查询。

图1.11.2 基本概念1.2.1数据是对客观事物的符号表示,在计算机科学中是指所有能输入到计算机中并被计算机程序处理的符号的总称。

如数值、字符串、图像、声音都是数据。

1.2.2数据元素是数据的基本单位,在计算机程序中通常作为一个整体进行考虑和处理单位,通常—个数据元素可由若干个数据项组成。

如书目文件中一本书的书目信息就是一个数据元素。

书目信息中的每一项(如书名、作者名)为一个数据项,数据项是不可分割的最小单位。

1.2.3数据对象是性质相同的数据元素的集合,是数据的子集。

1.2.4数据结构简单的说,是相互之间存在一种或多种特定关系的数据元素的集合。

数据结构没有一个明确的定义,它包括三个要素:1. 数据的逻辑结构数据的逻辑结构抽象地反映数据元素之间的逻辑关系,而不管这种逻辑关系在计算机中是如何表示的。

哈尔滨工业大学材料力学编程题c语言程序

哈尔滨工业大学材料力学编程题c语言程序

材料力学上机课程作业:C语言编写1一个力作用下的任意截面的弯矩,挠度。

程序:#include <stdio.h>#include<math.h>double Mz,l,a,x,v,E,I,b,F;main(){printf("请输入长度l\n");scanf("%lf",&l);printf("请输入长度a\n");scanf("%lf",&a);printf("请输入弹性模量E\n");scanf("%lf",&E);printf("请输入极惯性矩I\n");scanf("%lf",&I);printf("请输入力F\n");scanf("%lf",&F);printf("请输入x\n");scanf("%lf",&x);b=l-a;if(x>0&&x<a){Mz=F*(l-a)*x/l;v=-F*b*x*(l*l-x*x-b*b)/(6*E*I*l);printf("Mz=%f\n",Mz);printf("v=%f\n",v);}else if(x>a&&x<l){Mz=F*a*(l-x)/l;v=-F*b*(l/b*pow(x-a,3)+(l*l-b*b)*x-x*x*x)/(6*E*I*l);printf("Mz=%f\n",Mz);printf("v=%f\n",v);}else{printf("數值溢出\n");}}运算结果:选取材料的L=1m,E=4.5GPa。

哈工大C语言实验题完整版

哈工大C语言实验题完整版

哈工大C语言实验题标准化管理处编码[BBX968T-XBB8968-NNJ668-MM9N]Q308.(10分)第5章实验2:体型判断。

医务工作者经广泛的调查和统计分析,根据身高与体重因素给出了以下按“体指数”进行体型判断的方法。

体指数计算公式是:t = w /(h*h)其中:t是体指数;w是体重,其单位为千克;h是身高,其单位为米。

根据给定的体指数t计算公式,可判断你的体重属于何种类型:当 t<18 时,为低体重;当18≤t<25 时,为正常体重;当25≤t<27 时,为超重体重;当t≥27 时,为肥胖。

****输入提示信息格式:"Please enter h,w:\n"****输入数据格式要求:"%f,%f"(先读入身高,再读入体重,身高以米读入,体重以千克读入)****输出数据格式要求:当 t<18 时,输出:"Lower weight!\n"当18≤t<25 时,输出:"Standard weight!\n"当25≤t<27 时,输出:"Higher weight!\n"当t≥27 时,输出:"Too fat!\n"#include <stdio.h>#include <stdlib.h>main(){float t,w,h;printf("Please enter h,w:\n"); scanf("%f,%f",&h,&w);t = w/(h*h);if(t<18)printf("Lower weight!\n"); else if(t>=18&&t<25)printf("Standard weight!\n"); else if(t>=25&&t<27)printf("Higher weight!\n"); elseprintf("Too fat!\n");return 0;}Q586.(10分)编写一个程序,输入年份和月份,判断该年是否是闰年,并根据给出的月份判断是什么季节和该月有多少天(闰年的条件是年份能被4整除但不能被100整除,或者能被400整除;规定3~5月为春季,6~8月为夏季,9~11月为秋季,1、2和12月为冬季)。

哈尔滨工程大学c语言

哈尔滨工程大学c语言

一、选择题1. 对一维数组a的正确说明是 D 。

A) int a(10); B) int n=10,a[n]; C) int n; D) #define SIZE 10scanf("%d",&n); int a[SIZE];int a[n];2. 能对二维数组a进行正确初始化的语句是B。

A) int a[2][]={{1,0,1},{5,3,2}}; B) int a[][3]={{1,2,3},{4,5,6}};C) int a[2][4]={{1,2,3},{4,5},{6}}; D)int a[][3]={{1,0,1},{1,2,3,4},{1,1}};3. 对两个数组a和b进行如下初始化char a[]="ABCDEF";char b[]={'A','B','C','D','E','F'};则以下叙述正确的是D。

A) a与b数组完全相同B) a与b长度相同C) a和b中都存放字符串D) a数组比b数组长度长4. 以下数组定义中不正确的是 D 。

A) int a[2][3]; B) int b[][3]={0,1,2,3,4,5};C) int c[100][100]={0}; D) int d[3][]={{1,2},{1,2,3},{1,2,3,4}};5. 以下选项中,不能正确赋值的是 A 。

A) char s1[10];s1="Ctest"; B) char s2[]={'C', 't', 'e', 's', 't'};C) char s3[20]="Ctest"; D) char s4[]="Ctest\n"二、阅读程序写出结果1.#include<stdio.h>void main(){ char ch[7]={"12ab56"};int i,s=0;for(i=0;ch[i]>='0'&&ch[i]<='9';i+=2)s=10*s+ch[i]-'0';printf("%d\n",s);}答案:12.#include<stdio.h>void main(){ int a[10]={1,2,2,3,4,3,4,5,1,5};int n=0,i,j,c,k;for(i=0;i<10-n;i++){ c=a[i];for(j=i+1;j<10-n;j++)if(a[j]==c){ n++;for(k=j;k<10-n;k++)a[k]=a[k+1];}}for(i=0;i<(10-n);i++)printf("%d",a[i]);}答案:123453.#include <stdio.h>void main(){ int i;char a[]="Time",b[]="Tom";for(i=0;a[i]!='\0'&&b[i]!='\0';i++)if(a[i]==b[i])if(a[i]>='a'&&a[i]<='z')printf("%c",a[i]-32);elseprintf("%c",a[i]+32);else printf("*");}答案:t*M4.#include<stdio.h>#define LEN 4void main(){ int j,c;static char n[2][LEN+1]={"8980","9198"}; for(j=LEN-1;j>=0;j--){c=n[0][j]+n[1][j]-2*'0';n[0][j]=c%10+'0';}for(j=0;j<=1;j++) puts(n[j]);}答案:7078 9198三、程序填空1.程序的功能是在a数组中查找与x值相同的元素的所在位置。

哈工大(威海)c语言实验报告册答案

哈工大(威海)c语言实验报告册答案

实验1简单判定性问题求解一、实验学时完成本实验需4学时。

二、实验目的1、阅读程序题(1)掌握C语言数据类型,熟悉如何定义一个整型、字符型的变量,以及对它们赋值的方法;(2)掌握不同的类型数据之间赋值的规律;(3)掌握数据在内存中的存储方式;(4)学会输入、输出函数的基本格式和使用方法;(5)学会使用有关算术运算符、逻辑运算符、关系运算符,以及包含这些运算符的表达式。

2、编程题(1)如何运用判定性结构进行程序设计;(2)如何运用判定性结构进行程序设计。

3、调试题(1)熟悉C程序的编辑、编译、连接和运行的过程。

三、实验指导为了达到最佳的实验效果,以下提供几条适于编程的指导意见,可供参考。

1、阅读程序题应先运用自己在课堂所学的知识,推导出结果,在上机时输入计算机,印证自己推导的结果,注意观察数据在内存中的存储方式、含不同种运算符表达式的输出结果。

2、编程题必须首先画出流程图,并反复思考判断程序设计的正确性,完成程序的设计。

要注意简单判定性问题的结构选择。

3、调试题应明确程序的调试、测试是一项非常烦琐的工作,也是非常重要的工作。

对于初学者来说应该建立良好的习惯,在调试程序的时候,应该尽可能考虑到程序运行时各种可能情况。

四、实验内容1、阅读程序题(1)( ){ /*定义字符型变量*/c12; /*向字符变量赋以整数*/c1=97;c2=98;(" \n"12); /*以字符形式输出*/(" \n"12); /*以整数形式输出*/}该程序的输出结果是思考:可否改成 c1,c2;输出结果是?相同(2)(){75;("\n");}思考:若将语句中变为,可否输出分式的值?可以(3)(){9;; /*包含复合的赋值运算符的赋值表达式*/("\n");}思考:赋值表达式a+=a-=a+a的求解步骤?第一步:()9 第二步18(4)(){1;("\n");}出结果是思考:-1在内存中的存储形式?取反加一11111111111111111111111111111111(32个)(5)(){x1;1;x1; /*有符号数据传送给无符号变量*/(""1);}思考:(有符号赋值给无符号)(6)(){345;("\n",(!(a<b))(1));("");}思考:若将第一个语句中变为,结果将如何?1(换行)6(7)(){ 123;() ("\n");("\n");}该程序的输出结果是 1 。

中国大学MOOC-哈工大-C语言程序设计精髓第六-十二周编程题答案

中国大学MOOC-哈工大-C语言程序设计精髓第六-十二周编程题答案

6.1 下面代码的功能是将百分制成绩转换为5分制成绩,具体功能是:如果用户输入的是非法字符或者不在合理区间内的数据(例如输入的是a,或者102,或-45等),则程序输出Input error!,并允许用户重新输入,直到输入合法数据为止,并将其转换为5分制输出。

目前程序存在错误,请将其修改正确。

并按照下面给出的运行示例检查程序。

#include<stdio.h>#include <string.h>int main(){char score[100];int flag = 0, i, s;char grade;printf("Please input score:\n");while (1){flag=0;scanf("%s", score);for (i = 0; i < strlen(score); i++){if (score[i] >= '0' && score[i] <= '9'){continue;}else{flag = 1;break;}}s = atoi(score);if (s < 0 || s > 100 || flag == 1){printf("Input error!\n");printf("Please input score:\n");continue;}else{break;}}s = atoi(score);if (s >= 90){grade = 'A';}else if (s >= 80){grade = 'B';}else if (s >= 70){grade = 'C';}else if (s >= 60){grade = 'D';}else{grade = 'E';}printf("grade: %c\n", grade);return 0;}6.2 编程计算a+aa+aaa+…+aa…a(n个a)的值(4分)题目内容:编程计算a+aa+aaa+…+aa…a(n个a)的值,n和a的值由键盘输入。

哈工大C语言程序设计A卷答案

哈工大C语言程序设计A卷答案
float s;float s=0.02分(找到错1分,改正1分)
for(n=10;n>1;n--)
s+=1/n;s += 1.0/n或s += (float)1/n2分
printf("%6.4f\n",s);
}
2.下面函数Squeeቤተ መጻሕፍቲ ባይዱ()的功能是删除字符串s中所出现的与变量c相同的字符。(本小题6分)
一、单项选择题(本题16分,每小题2分)
题号
1
2
3
4
5
6
7
8
答案
B
D
C
A
B
B
A
C
二、填空题。(本题20分,每空1分)
题号
答案
题号
答案
1
p=*a
11
h=q->next
2
*a+12
12
free(q)
3
求字符串长度
13
026
4
(int)
14
#include <stdio.h>
5
intpart
15
FILE *
题号
1
2
3
4
5
6
7
8
答案
3
13↙
2
4
1,6
un,g
here,ve
51,30
&#
四、根据功能描述改正程序中的错误。不得增行或删行,不得更改程序结构。(本题10分)
1.要求以下程序的功能是计算1+1/2+1/3+……+1/10的和。(本小题4分)
#include <stdio.h>

哈尔滨工业大学c语言实验

哈尔滨工业大学c语言实验

哈尔滨工业大学计算机科学与技术学院苏小红sxh@主教材:苏小红等,《C语言大学实用教程》,电子工业出版社,2004,8苏小红等,《C语言大学实用教程(第2版)》,电子工业出版社,2007,2实验教材:苏小红等,《C语言大学实用教程习题与实验指导》,电子工业出版社,2004,8苏小红等,《C语言大学实用教程学习指导》,电子工业出版社,2007,4实验内容问题1:要使下面程序的输出语句在屏幕上显示1,2,34,则从键盘输入的数据格式应为以下备选答案中的哪一个?#include <stdio.h>main(){char a,b;int c;scanf("%c%c%d",&a,&b,&c);printf("%c,%c,%d\n",a,b,c);}A) 1 2 34 B) 1, 2, 34问题2:与上面程序的键盘输入相同的情况下,要使上面程序的输出语句在屏幕上显示1 2 34,则应修改程序中的哪条语句?怎样修改?#include <stdio.h>main(){char a,b;int c;scanf("%c%c%d",&a,&b,&c);printf("%c,%c,%d\n",a,b,c);}练习——键盘输入与屏幕输出练习问题3:要使上面程序的键盘输入数据格式为1,2,34,输出语句在屏幕上显示的结果也为1,2,34,则应修改程序中的哪条语句?怎样修改?#include <stdio.h>main(){char a,b;int c;scanf("%c%c%d",&a,&b,&c);printf("%c,%c,%d\n",a,b,c);}练习——键盘输入与屏幕输出练习问题4:要使上面程序的键盘输入数据格式为1,2,34,而输出语句在屏幕上显示的结果为’1’,’2’,34,则应修改程序中的哪条语句?怎样修改?–[提示:利用转义字符输出字符单引号字符。

哈工大C语言程序设计作业

哈工大C语言程序设计作业
{
int i,j;
for(i=0;i<m;i++){
for(j=0;j<n;j++){
printf("%8d",at[i][j]);
if(j==n-1)
putchar(10);
}
}
}
8、参考例8.6程序中的函数ReadScor()和Average(),输入某班同学某门课成绩(最多不超过40人),当输入为负值时,表示输入结束,用函数编程统计成绩高于平均分(包括等于平均分)的学生人数。
#include<stdio.h>
#define N 10
#define M 10
void Transpose(int a[][N], int at[][M], int m, int n);
void InputMatrix(int a[][N], int m, int n);
void PrintMatrix(int at[][M], int n, int m);
#include<stdio.h>
int main()
{
int a[5][5],s[5],t[5];
int i,j,k,l,h,n,m;
for (i=0;i<=4;i++)
{
scanf("%d %d %d %d %d",&a[i][0]&a[i][1],&a[i][2],&a[i][3],&a[i][4]);
}
int FindMin(int s[],int n)
{
int Min=0,m=s[0],i;
for (i=1;i<n;i++)

哈工大2003-2006年高级语言程序设计 考试题答案

哈工大2003-2006年高级语言程序设计 考试题答案

哈工大2003年春季学期C语言考试题参考答案一、填空题:(24分)(1) 将变量a的地址存入 (9) float a[10]指针变量p中(2) 自动变量 (10) j<10(3) 7 (11) j<=8(4) &x,&y (12) k<=9-j(5) float *x,*y (13) a[k]>a[k+1](6) *x (14) a[k]=a[k+1](7) *x=*y (15) j<=9(8) *y=temp (16) j%5==0二、单选题:(20分)1、B2、A3、 D4、 B5、 D6、D7、D8、D9、A 10、A三、判断题:(16分)1、√2、√3、4、√5、 6、 7、√ 8、四、写出程序运行结果(20分)1、 a=8,x=1252、 adb=1,y=1 abcdefghimnohino3、04、a=61 a=723五、编程:1、main(){int a[3][4], i,j, max, m,n;for (i=0; i<3; i++){for(j=0 ;j<4 ;j++)scanf("%d",&a[n]);}max = a[0][0];m= n = 0;for (i=0; i<3; i++){for(j=0 ;j<4 ;j++)if (max<a[i][j]){max = a[i][j];m = i ;n=j ;}}printf("max=%d\n",max);printf("m=%d\tn=%d\n",m,n);2、#include <stdio.h>main(){int x,n,tt,f1(int int);scanf(“%d,%d”,&x,&n);tt=f1(x,n);printf(“%d”,tt);}int f1(int x,int y){int temp=1,I;for(I=1;I<=y;I++)temp*=x;return(tmp);}哈工大2002/2003学年秋季学期 C语言试题答案一、选择题1、D,2、B,3、A,4、B,5、A,6、A,7、D,8、D,9、B, 10、B二、给出下列程序的运行结果1、17,1022、13.7000003、d=204、135、s=12346、10三、阅读程序,在标有下滑线的空白处填入适当的表达式或语句,使程序完整并符合题目要求。

C语言实验题

C语言实验题

实验二 C基本数据类型及运算目的要求:掌握C语言中整型、字符型、实型变量的定义及赋值;学会使用C的有关运算符及相关表达式;进一步熟悉VC++ 6.0的集成开发环境。

实验内容:1. 编写程序,从键盘接收3个实数(分别为10.0、20.0、5.0),输出这3个数的和s、乘积t和平均值a。

2. 编程。

要求用户输入两个整数a、b(分别为20、10),读取用户从键盘输入的值,然后:1) 用整型输出这两个数的和、差;2) 用长整型输出这两个数的积,用float输出商;3) 用整型输出这两个数的余数,用float输出平均值。

3. 再次运行程序第2题中的程序,使整数a、b的值分别为10、20,分析程序运行结果,并给出说明 *。

实验三 C简单程序设计目的要求:掌握C语言中赋值语句的使用。

掌握数据输入输出的方法。

能正确使用各种格式转换符。

实验内容:1. 编写一个程序,从键盘接收一个一位的整型数,经转换,用字符函数putchar输出。

例如,输入整数5,程序运行后输出字符5。

2. 编程。

输入半径,计算球体表面积和球体积。

3. 编写一个程序,要求通过键盘给6个变量赋值,然后将变量的值在屏幕上打印输出。

这六个变量的值分别为:10,-10,40000,a,3.14,hello。

*实验四 C程序控制结构--分支目的要求:学会正确使用逻辑运算符与逻辑表达式。

掌握分支结构的格式及流程。

学会利用分支结构控制程序的流程。

实验内容:1. 编程实现:键盘输入三个整数,分别存放到变量a,b,c中,输出其中的最小值(要求不改变a、b、c的值)。

2. 编程实现:键盘输入一个字符,如是大写字母,则输出相应小写字母;如是小写字母,则输出相应大写字母;其它字符原样输出。

3. 计算以下分段函数值具体要求如下:①用if语句实现分支结构的编程。

②自变量与函数均采用双精度类型。

③自变量x用scanf函数输入,且输入前要有提示。

④结果的输出采用以下形式:x=具体值,f(x)=j具体值。

哈工大c语言-练习题教学内容

哈工大c语言-练习题教学内容

哈工大c语言-练习题求用户输入的两个数的商,程序运行时,以如下格式输入数据:Input two integers:4 2↙请改正程序中的错误,使它能得出正确的结果。

#include <stdio.h>main(){int a, b, c;printf("Input two integers:");scanf("%d,%d", &a, &b);c = a\b;printf("The quotient of a and bis :%d", c);}# include <stdio.h>int main (){int a,b,c;printf ("Input two integers:");scanf ("%d %d",&a,&b);c=a/b;printf ("The quotient of a and b is :%d\n",c);return 0;}使用const常量定义圆周率pi=3.14159,编程从键盘输入圆的半径r,计算并输出圆的周长和面积。

输出的数据保留两位小数点。

输入格式要求:"%lf"提示信息:"Input r:" 输出格式要求:"printf WITHOUT width or precision specifications:\n" "circumference = %f, area = %f\n" "printf WITH width and precision specifications:\n""circumference = %7.2f, area= %7.2f\n"程序运行示例如下:Input r:5.3printf WITHOUT width or precision specifications:circumference = 33.300854, area = 88.247263printf WITH width and precision specifications:circumference = 33.30, area = 88.25 #include <stdio.h>int main(){const double PI=3.14159;double r;printf("Input r:");scanf("%lf", &r);printf("printf WITHOUT width or precision specifications:\n");printf("circumference = %f, area = %f\n",2*PI*r,PI*r*r);printf("printf WITH width and precision specifications:\n");printf("circumference = %7.2f, area = %7.2f\n",2*PI*r,PI*r*r);return 0;}写一个程序,将接收的华氏温度转换为对应的摄氏温度。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Q308.(10分)第5章实验2:体型判断。

医务工作者经广泛的调查和统计分析,根据身高与体重因素给出了以下按“体指数”进行体型判断的方法。

体指数计算公式是:t = w /(h*h)其中:t是体指数;w是体重,其单位为千克;h是身高,其单位为米。

根据给定的体指数t计算公式,可判断你的体重属于何种类型:当t<18 时,为低体重;当18≤t<25 时,为正常体重;当25≤t<27 时,为超重体重;当t≥27 时,为肥胖。

****输入提示信息格式:"Please enter h,w:\n"****输入数据格式要求:"%f,%f"(先读入身高,再读入体重,身高以米读入,体重以千克读入)****输出数据格式要求:当t<18 时,输出:"Lower weight!\n"当18≤t<25 时,输出:"Standard weight!\n"当25≤t<27 时,输出:"Higher weight!\n"当t≥27 时,输出:"Too fat!\n"#include <stdio.h>#include <stdlib.h>main(){float t,w,h;printf("Please enter h,w:\n");scanf("%f,%f",&h,&w);t = w/(h*h);if(t<18)printf("Lower weight!\n");else if(t>=18&&t<25)printf("Standard weight!\n");else if(t>=25&&t<27)printf("Higher weight!\n");elseprintf("Too fat!\n");return 0;}Q586.(10分)编写一个程序,输入年份和月份,判断该年是否是闰年,并根据给出的月份判断是什么季节和该月有多少天?(闰年的条件是年份能被4整除但不能被100整除,或者能被400整除;规定3~5月为春季,6~8月为夏季,9~11月为秋季,1、2和12月为冬季)。

**输入格式要求:"%d,%d" 提示信息:"Please enter year,month:"**输出格式要求:"%d is leap year\n" "%d is not leap year\n" "The season is spring/summer/autumn/winter" "The number of days of this month is %d\n"程序运行示例如下:实例1:Please enter year,month:2012,112012 is leap yearThe season is autumnThe number of days of this month is 30实例2:Please enter year,month:2013,122013 is not leap yearThe season is winterThe number of days of this month is 31#include <stdio.h>#include <stdlib.h>main(){int year=0,leap=0,mon=0,day=0;printf("Please enter year,month:");scanf("%d,%d",&year,&mon);if((year%100!=0&&year%4==0)||(year%100==0&&year%400==0)){ printf("%d is leap year\n",year);leap=1;}elseprintf("%d is not leap year\n",year);switch(mon){case1:case2:case 12:printf("The season is winter\n");break;case3:case4:case5:printf("The season is spring\n");break;case6:case7:case8:printf("The season is summer\n");break;case9:case 10:case 11:printf("The season is autumn\n");break;}switch(mon) {case1:case3:case5:case7:case8:case 10:case 12:day=31;break; case4:case6:case9:case 11:day=30;break; case2:if(leap==1)day=29;elseday=28; }printf("The number of days of this month is %d\n",day);}Q3161.(10分)请用else if多分支条件判断语句编程设计一个简单的计算器程序。

要求:(1)请用户按以下形式从键盘输入表达式:操作数①运算符op 操作数②(2)然后计算表达式的值**输入提示信息**:无**输入数据格式**:"%f%c%f"**输出数据格式**:"%.2f%c%.2f=%.2f\n"若若输入的运算符是除法运算符/,当除数为0时,输出数据格式为:"dat is 0!Error!\n"若输入的运算符不是加(+)、减(-)、乘(*)、除(/),则输出数据格式为:"Error!\n"[友情提示]:①用户输入的运算符为算术运算符:加(+)、减(-)、乘(*)、除(/)。

用字符变量op 表示;②操作数①和操作数②为浮点型数据,分别用浮点型变量dat1、dat2表示。

③程序运行结果如下所示:1+2↙1.00+2.00=3.00#include <stdio.h>#include <stdlib.h>main(){float a=0,b=0;char op;scanf("%f%c%f",&a,&op,&b);if(op=='+')printf("%.2f%c%.2f=%.2f\n",a,op,b,a+b); else if(op=='-')printf("%.2f%c%.2f=%.2f\n",a,op,b,a-b); else if(op=='*')printf("%.2f%c%.2f=%.2f\n",a,op,b,a*b); else if(op=='/'){if(b!=0)printf("%.2f%c%.2f=%.2f\n",a,op,b,a/b);elseprintf("dat is 0!Error!\n");}elseprintf("Error!\n");}Q3185.(10分)实验二(2016春秉权C语言课):根据输入的百分制成绩score,转换成相应的五分制成绩grade后输出。

转换规则为(要求用switch语句实现):当score大于等于90且小于等于100时,grade=A;当score大于等于80且小于90时,grade=B;当score大于等于70且小于80时,grade=C;当score大于等于60且小于70时,grade=D;当score大于等于0且小于60时,grade=E。

格式要求:输入提示:"Please enter score:"输出形式形如:"100--A"、"75--C"、"0--E"当输入分数不正确时,输出:"Input error! "#include<stdio.h>main(){int s,m;printf("Please enter score:");scanf("%d",&s);m=s<0||s>100?-1:s/10;switch(m){case 10:case9:printf("%d--A\n",s);break;case8:printf("%d--B\n",s);break;case7:printf("%d--C\n",s);break;case6:printf("%d--D\n",s);break;case5:case4:case3:case2:case1:case0:printf("%d--E\n",s);break;default:printf("Input error!");}}Q221.(10分)编程从键盘输入某年某月(包括闰年),用switch语句编程输出该年的该月拥有的天数。

要求考虑闰年以及输入月份不在合法围的情况。

已知闰年的2月有29天,平年的2月有28天。

**输入格式要求:"%d, %d" 提示信息:"Input year,month:"**输出格式要求:"31 days\n" "29 days\n" "28 days\n" "Input error!\n"程序运行示例如下:Input year,month:2004,229 days#include<stdio.h>main(){int a, b;printf("Input year,month:"); scanf("%4d, %2d", &a, &b); switch (b){case1:case3:case5:case7:case8:case 10:case 12:printf("31 days\n");break;case4:case6:case9:case 11:printf("30 days\n");break;case2:if ((a % 4 == 0 && a % 100 != 0) || a % 400 == 0)printf("29 days\n");elseprintf("28 days\n");break;default:printf("Input error!\n");}return 0;}Q210.(10分)第7章实验任务1:所谓素数是指这个数只能被1和自身整除。

相关文档
最新文档