c语言实验练习八

合集下载

C语言第8次实训题目及参考答案

C语言第8次实训题目及参考答案
if(sushu(i)==1) {
if(sushu(i+2)==1) {
printf("%d %d\n",i,i+2); count++; } } } printf("200~1000 范围内容一共%d 对双胞胎数\n",count); }
t=t*a; } return t; } void main() { int n,m,i,j,s=0;//i 是底数,j 是指数 scanf("%d,%d",&n,&m); for(i=n,j=m;i<=m;i++,j--) {
s+=mi(i,j); } printf("s=%ld",s); }
4、求[200,1000]的双胞胎数的对数。双胞胎数:两素数差为 2 称为双胞胎数。 提示:在第 2 题的基础上进行修改:自定义函数不变,在 main()函数中实现对双胞胎数的 判断:如果 a 是素数,再进一步判断 a+2 是不 0 是素数。如果 a+2 也是素数,则 a、a+2 为 双胞胎数。 参考代码: int sushu(int i) {
for(j=2;j*j<=i;j++) {
if(i%j==0) {
flag=0; break; } } return flag; }
#include <stdio.h> void main() {
int i,count=0; for(i=200;i>=2;i--) {
if(sushu(i)==1) {
printf("%d ",i); count++; }

C语言实验册完整答案

C语言实验册完整答案

实验2答案五.程序改错#include<stdi o.h>int main(void){int x=3,y;y = x*x;printf("%d = %d * %d\n",y,x,x); /* 输出*/printf("%d * %d = %d\n",x,x,y);return 0;}六、一般编程题6.1#include<stdio.h>int main(void){int x,y;printf("Input x: ");scanf("%d",&x);printf("Input y: ");scanf("%d",&y);printf("%d + %d = %d\n",x,y,x+y);printf("%d - %d = %d\n",x,y,x-y);printf("%d * %d = %d\n",x,y,x*y);printf("%d / %d = %d\n",x,y,x/y);printf("%d %% %d = %d\n",x,y,x%y);return 0;}6.2#include<stdio.h>int main(void){ float x; double y;printf("Input x: ");scanf("%f",&x);printf("Input y: ");scanf("%lf",&y);printf("%f + %f = %f\n",x,y,x+y);printf("%f - %f = %f\n",x,y,x-y);printf("%f * %f = %f\n",x,y,x*y);printf("%f / %f = %f\n",x,y,x/y);return 0;}6.3#include<stdio.h>int main(void){ char c;printf("Input c: ");scanf("%c",&c);printf("%c\n",c+32);return 0;}6.4#include<stdio.h>int main(void){int celsius,fahr;fahr = 150;celsius = 5*fahr/9 - 5*32/9;printf("fahr = %d, celsius = %d\n", fahr, celsius);return 0;} 如果使用公式9)32(5-⨯=f c 计算结果不一样,celsius = 65。

C语言实训题及参考答案

C语言实训题及参考答案

C语言实训题及参考答案第一题:编写一个程序,将输入的两个整数进行加法运算,并输出结果。

参考答案:```c#include <stdio.h>int main() {int num1, num2, result;printf("请输入两个整数:");scanf("%d %d", &num1, &num2);result = num1 + num2;printf("加法结果:%d", result);return 0;}```第二题:编写一个程序,判断输入的整数是否为偶数,并输出“是”或“否”。

参考答案:```c#include <stdio.h>int main() {int num;printf("请输入一个整数:");scanf("%d", &num);if (num % 2 == 0) {printf("是");} else {printf("否");}return 0;}```第三题:编写一个程序,计算输入字符串的长度,并输出结果。

参考答案:```c#include <stdio.h>#include <string.h>int main() {char str[100];int length;printf("请输入一个字符串:");scanf("%s", str);length = strlen(str);printf("字符串长度:%d", length);return 0;}```第四题:编写一个程序,将输入的字符串反转,并输出结果。

参考答案:```c#include <stdio.h>#include <string.h>int main() {char str[100];int i, length;printf("请输入一个字符串:");scanf("%s", str);length = strlen(str);for (i = length - 1; i >= 0; i--) {printf("%c", str[i]);}return 0;}```第五题:编写一个程序,将输入的数组元素按从小到大的顺序排序,并输出结果。

c语言作业

c语言作业

1、用下面的scanf函数输入数据,使a=10, b=20, c1='A', c2='a', x=1.5, y=-3.75, z=67.8,请问在键盘上如何输入数据?scanf("%5d%5d%c%c%f%f%*f,%f", &a,&b,&c1,&c2,&x,&y,&z);2、设圆半径r=1.5,圆柱高h=3,求圆周长、圆面积、圆球表面积、圆球体积、圆柱体积。

用scanf函数输入数据,输出计算结果,输出时要求有文字说明,取小数点后2位数字第三次作业1、有3个整数a,b,c,由键盘输入,输出其中最大的数。

2、有一个函数:x x<1y= 2x-1 1<=x<103x-11 x>=10写一段程序,输入x,输出y的值。

3、给出一百分制成绩,要求输出成绩等级A、B、C、D、E。

90分以上为A,80-89分为B,70-79为C,60-69为D,60分以下为E。

4、给一个不多于5位的正整数,输出这个数是几位数。

第四次作业1、给一个不多于5位的正整数,要求:a.求出它是几位数;+b.分别输出每一位数字;c.按逆序输出各位数字,例如:原数为321,应输出123。

2、教材P112页第5.8题(if语句解法创建一个独立文件,switch语句解法创建一个独立文件第五次作业1、输入两个正整数m和n,求其最大公约数和最小公倍数。

(经典题)2、输入一行字符,分别统计出其中英文字母、空格、数字和其他字符的个数,并输出。

3、求s=a+aa+aaa+aaaa+....+(a...a)之值,其中a是一个数字,n表示a的位数。

1、输入两个字符串,使用指针p将两个字符串按次序复制到数组c中。

例:输入“zhe"和"jiang",将"zhejiang"保存在数组c中。

C语言实训题目

C语言实训题目

C语言实训题目
以下是几个C语言实训题目:
1. 编写一个C程序,使用for循环计算所有100以内的奇数的和。

2. 编写一个C程序,读取用户输入的两个数字,计算它们的和、差、积和商,并输出结果。

3. 编写一个C程序,使用while循环读取用户输入的数字,直到用户输入0为止,并计算输入数字之和,最后输出结果。

4. 编写一个C程序,读取用户输入的一段英文文字,将其中的每个单词首字母大写,并输出结果。

5. 编写一个C程序,使用指针实现一个简单的链表,完成添加节点、删除节点、搜索节点等基本操作。

6. 编写一个C程序,实现一个简单的计算器,支持加、减、乘、除等基本运算。

7. 编写一个C程序,读取用户输入的一段文章,统计其中每个字母出现的次数,并按照字母表顺序输出。

8. 编写一个C程序,实现一个简单的学生信息管理系统,包括添加、修改、查询、删除等功能。

9. 编写一个C程序,读取用户输入的一个整数N,使用递归实现N 的阶乘计算,并输出结果。

10. 编写一个C程序,使用函数指针实现菜单式交互,用户可以通过输入数字选择想要执行的操作,例如计算器、学生信息管理系统等。

C语言实践编程题

C语言实践编程题

一、分支结构(7)1、 根据以下分段函数计算水费。

2、 如上右图所示,输入一个点的坐标x ,y (0≤x ,y ≤1),若该点位于阴影部分,则输出1,否则输出0。

3、 输入一个正整数n,再输入n个学生的成绩,要求按以下四档分别统计并输出各档的人数:90分及以上;75分~89分;60分~74分;60分以下。

4、 在屏幕上打印输出21世纪所有的闰年。

5、 编写程序,实现功能为统计某学校二年级学生的体重情况,体重60斤及以上为超重,体重40斤及以下为营养不良,体重在41-59斤之间的为正常,体重数据由键盘输入,输入-1结束,在屏幕上显示超重、正常和营养不良的学生人数。

6、 输入一个正整数n,再输入n个学生的成绩,计算平均成绩与及格学生的人数并输出。

7、 输入一批正整数(以0或-1为结束标志),统计其中所有7的倍数的个数。

要求定义和调用函数int isNumber(int n),判断数n 是否是7的倍数,是则返回1,否则返回0。

二、累和算法(10)8、 编写程序,输入一批正整数(以零或负数为结束标志),求其中的偶数和并输出。

9、 编写程序按每行5个数的格式输出1至n 范围内能被7或17 整除的整数,并求出其和。

输入输出示例:(其中50是键盘输入)n=507 14 17 21 2834 35 42 49Sum=24710、程序的功能是按下面的公式计算并输出s的值,m的值由键盘输入,m应是一个奇数,如果输入的是一个偶数,取小于m的最大奇数。

11、编写程序,输入两个正整数a和n,求a+aa+aaa+……+aaaaaaa(n个a)之和。

例如:输入2和3,输出246(即计算和表达式2+22+222的值)。

12、使用格里高利公式求π的近似值并输出,要求精确到最后一项的绝对值小于10–4。

+13、从键盘输入整数n,根据公式=1!+2!+3!+4!+......+n!求解并输出结果。

14、从键盘输入整数n,根据下面公式求解并输出。

C语言实验题及参考答案

C语言实验题及参考答案

实验一1、计算整数各位数字之和(10 分)输入一个3位正整数,将其每一位的数字相加,输出和。

输入格式:输入一个3位正整数。

变量数据类型为unsigned。

输出格式:输出整数每一位相加后的整数和。

输入样例:输出样例:【参考答案】#include ""int main(){ unsigned int a,ge,shi,bai,sum;scanf("%d",&a);ge=a%10;shi=a/10%10;bai=a/100;sum=ge+shi+bai;printf("%d\n",sum);return 0;}2、计算代数表达式(10 分)求:输入格式:输入角度x。

变量数据类型为double。

π为。

输出格式:输出y的值,精确到小数点后2位。

输入样例:输出样例:【参考答案】#include <>#include <>#define PIint main(){double x,y;scanf("%lf",&x);y=sqrt((sin(60*PI/180)+1)*(sin(30*PI/180)+1)/cos(x*PI/180));printf("%.2lf",y);return 0;}3、逆序的三位数(10 分)程序每次读入一个正3位数,然后输出按位逆序的数字。

注意:当输入的数字含有结尾的0时,输出不应带有前导的0。

比如输入700,输出应该是7。

输入格式:每个测试是一个3位的正整数。

输出格式:输出按位逆序的数。

输入样例:输出样例:【参考答案】#include ""int main(){ int a,ge,shi,bai,b;scanf("%d",&a);ge=a%10;shi=a/10%10;bai=a/100;b=ge*100+10*shi+bai;printf("%d\n",b);return 0;}4、求整数均值(10 分)本题要求编写程序,计算4个整数的和与平均值。

C语言编程实验

C语言编程实验

C语言实验习题7-1 输出图形(10 分)编写程序输出图形。

第一行输出12个$,第二行先输出3个空格,然后再输出hello!,第三行输出12个$输入样例:输出样例:代码:#include <stdio.h>int main(){printf("$$$$$$$$$$$$\n"" hello!\n”"$$$$$$$$$$$$\n");return 0 ;}7-5 计算华氏温度(5 分)本题要求编写程序,计算摄氏温度26°C 对应的华氏温度。

计算公式:F=9×C/5+32,式中:C表示摄氏温度,F表示华氏温度,输出数据要求为整型。

输入格式:本题目没有输入。

输出格式:按照下列格式输出代码:#include 〈stdio。

h>int main(){int f;int c;c=26;f=9*c/5+32;printf(”celsius = 26, fahr = %d”,f);return 0 ;}7-9 逆序的三位数(10 分)程序每次读入一个正3位数,然后输出按位逆序的数字。

注意:当输入的数字含有结尾的0时,输出不应带有前导的0。

比如输入700,输出应该是7。

输入格式:每个测试是一个3位的正整数。

输出格式:输出按位逆序的数。

输入样例:输出样例:代码:#include <stdio。

h〉int main(){int n,a,b,c;scanf(”%d”,&n);a=n/100;b=n/10—a*10;c=n—a*100—b*10;int d;d=a+b*10+c*100;printf("%d",d);return 0 ;}7—10 整数四则运算(10 分)本题要求编写程序,计算2个正整数的和、差、积、商并输出。

题目保证输入和输出全部在整型范围内。

输入格式:输入在一行中给出2个正整数A和B。

输出格式:在4行中按照格式“A 运算符 B = 结果"顺序输出和、差、积、商。

C程序设计教程与实验第8章习题参考答案

C程序设计教程与实验第8章习题参考答案

第8章习题二、填空题1. 22. 6 7 200C3.p[5]4. 定义p1为指向整型数据的指针变量定义p2为指针数组,其数组元素均为指针定义p3为指向一维数组的指针,其数组元素均为整型数5. 5,36. 207. r+b[k] *x8. SecondLiFirstWang9. 2510. 12 12三程序分析题1.72. 1 5 33 9 73. 2 44. abcDDfefDbD5. 53四、编程题1.输入2个字符串,每个字符串的长度均不超过80字符,用自己实现的cmpstr()函数完成这两个字符串的大小比较,cmpstr()函数的功能和字符串比较函数strcmp()的功能相同#include <stdio.h>#include<string.h>int cmpstr(char *s1, char *s2){char *p, *q;p=s1;q=s2;while(*p!='\0' && *q!='\0'){if(*p==*q){p++;q++;}elsebreak;}return *p-*q;}void main(){char str1[81], str2[81];int c;printf("请输入第1个字符串:");gets(str1);printf("请输入第2个字符串:");gets(str2);c=cmpstr(str1,str2);if(c>0)printf("字符串%s 大于字符串%s\n",str1,str2);else if(c<0)printf("字符串%s 小于字符串%s\n",str1,str2);elseprintf("字符串%s 等于字符串%s\n", str1, str2);}2.定义一个函数float reverse(int p[], int n),该函数有两个参数,第一个参数p为形参数组名,第二个参数n为该数组中的元素个数,要求使用reverse()函数将该数组中的所有元素逆序排列,并返回该数组中所有元素的平均值。

国家开放大学C语言程序设计章节测试参考答案

国家开放大学C语言程序设计章节测试参考答案

国家开放大学《C语言程序设计》章节测试参考答案第一章C语言概述自测练习一:C语言字符集自测练习1.在C语言字符集中,包含有全部26个英文大写字母和对应的小写字母。

(√)2.在C语言字符集中,一个大写英文字母和它的小写英文字母被视为不同的字符。

(√)3.在C语言程序中,ABC和abc被作为同一标识符使用。

(×)自测练习二:C语言字符集自测练习1.在C语言中,保留字是有专门含义和作用的,不能作为一般标识符使用。

(√)2.在C语言中,作为标识符的第一个字符只能是英文字母或下划线,不能是数字字符。

(√)3.C语言中使用的字符常量,其起止标记符是()。

a. 双引号b. 尖括号c. 单引号d. 中括号4.C语言中使用的字符串常量,其起止标记符是()。

a. 双引号b. 中括号c. 尖括号d. 单引号自测练习三:C语句分类自测练习1.在C语言中,一条简单语句的结束符是()。

a. 分号b. 空格c. 冒号d. 逗号2.在C语言中,每条复合语句的开始标记字符为()。

a. <b. [c. (d. {3.不符合C语言规定的复合语句是()。

a. {x=0;}b. {}c. {;}d. {y=10}4.C语言中的选择类语句有两条,它们是()。

a. else和caseb. if和switchc. if和elsed. switch和case自测练习四:函数分类与使用自测练习1.在每个C语言程序中都必须包含有这样一个函数,该函数的函数名为()。

a. nameb. mainc. MAINd. function2.C语言程序中的基本功能模块为()。

a. 标识符b. 函数c. 表达式d. 语句3.一个函数定义所包含的两个部分是()。

a. 函数头和函数体b. 函数原型和函数体c. 函数名和参数表d. 函数头和函数尾4.一个程序文件开始使用的每条预处理命令,其首字符必须是()。

a. #b. @c. %d. $5.在一个程序文件中,若要使用#include命令包含一个系统头文件,则此头文件所使用的起止定界符为一对()。

C语言项目实验作业_学生版

C语言项目实验作业_学生版

C语言项目实验作业系(部)机电与汽车工程学院姓名(学号) 40 庞文胤 25 梁志坚专业(班级) 13电子2班电子教研室编制实验一数据类型、运算符和表达式应用一、实验目的1.掌握C语言数据类型的种类和作用;2.熟悉如何定义一个整型、字符型、实型变量,以及对它们赋值的方法,3.掌握不同的类型数据之间赋值的规律;4.灵活运用各种运算符及其表达式;二、实验步骤(一)阅读程序1. 输入并运行以下程序,观察运行结果。

#include <stdio.h>main(){ char c1,c2;c1=97;c2=98;printf("%c,%c\n",c1,c2); }(1)在第五行后面加入以下printf语句,并运行。

printf("%d,%d\n",c1,c2);(2)在(1)的基础上,将第三行改为以下语句,并运行。

int c1,c2;(3)在(1)的基础上,将第四行改为以下语句,并运行。

c1=321;c2=400;2. 分析并运行此程序,当输入的数据为10时,下面程序的运行结果。

#include <stdio.h>main(){ float x,y;scanf("%f",&x);printf("\n2.4*x-1/2=%f",2.4*x-1.0/2);printf("\nx%%2/5-x=%f",(int)(x)%2/5-x);printf("\n(x-=x*10,x/=10)=%d\n",(x-=x*10,x/=10)); }3.分析以下程序运行的结果#include <stdio.h>main(){ int i,j,m,n ;i=8;j=10;m=++i;n=j++;printf("%d,%d,%d,%d\n",i,j,m,n);}(2) 将第6、7行改为:m=i++;n=++j;(3)程序改为:#include <stdio.h>main(){ int i , j , m=0 , n=0 ;i=8; j=10;m+=i++;n-=--j;printf(“%d,%d,%d,%d\n”,i,j,m,n);}要求:依据题目要求,分析已给出的语句,填写空白。

C语言实验题目

C语言实验题目

C语言程序设计实验进阶题目实验一分支语句实验目的:掌握使用if~else语句和switch~case语句实现分支结构的方法。

实验内容:1.运输公司对用户计算运费。

距离越远,每公里运费越低,标准如下:s<250km 无折扣250<=s<500 2%折扣500<=s<1000 5%折扣1000<=s<2000 8%折扣2000<=s<3000 10%折扣3000<=s 15%折扣设每公里每吨货物的基本运费为p,货物重为w,距离为s,折扣为d,则总运费计算公式为:f=p*w*s*(1-d),编写程序计算运费。

要求:(1)使用switch~case语句。

(2)p、w、s的值从键盘输入。

实验二循环语句实验目的:掌握使用三种循环语句实现循环结构的方法。

实验内容:1.编写程序验证下列结论:任何一个自然数n的立方都等于n个连续奇数之和。

例如:13=1;23=3+5;33=7+9+11。

要求:程序对每个输入的自然数计算并输出相应的连续奇数,直到输入的自然数为0时止。

实验三一维数组实验目的:掌握一维数组的定义、初始化,以及一维数组元素的下标法引用和指针法引用。

实验内容:1.将数组a中的10个元素后移m位,移出的m位顺序存放在数组的前位。

要求:(1)数组元素值在程序中初始化。

(2)m的值从键盘输入。

(3)用下标法和指针法两种方法。

实验四 数组实验目的:掌握二维数组的定义、初始化,以及二维数组元素的下标法引用和指针法引用。

实验内容:1.有5名学生,每名学生有语文、数学、物理和外语四门课的考试成绩,编程统计各学生的总分和平均分,以及所有学生各科的总计分和平均分。

要求:(1)成绩在程序中初始化,结果以表格的形式输出。

(2)分别用下标法和指针法实现。

实验五 字符串实验目的:掌握使用下标法和指针法处理字符串。

实验内容:1.编写程序,统计字符串str 中含有子串substr 的个数。

C语言程序设计实训练习

C语言程序设计实训练习

C语言程序设计实训练习:第一章1、使用公式℃=(5/9) (℉-32),打印下列华氏温度与摄氏温度对照表:0 -1720 -640 460 1580 26100 37120 48140 60160 71…300 148#include<stdio.h>int main(){int c,f;for(f=0;f<=300;f++){c=(int)((1.0*5/9)*(f-32));printf("\t%d\t%d\n",f,c);f+=19;}return 0;}2、编写一个统计空格、制表符与换行符个数的程序。

#include<stdio.h>int main(){int c,Num_space=0,Num_tab=0,Num_enter=0;while ((c = getchar()) != EOF){switch(c){case ' ':Num_space++;break;case '\t':Num_tab++;break;case '\n':Num_enter++;break;}}printf("The number of Space is %d\n",Num_space);printf("The number of Tab is %d\n",Num_tab);printf("The number of Enter is %d\n",Num_enter);return 0;}3、编写一个将输入复制到输出的程序,并将其中连续的多个空格用一个空格代替。

4、编写一个程序,统计输入的行数、单词数与字符数。

5、编写一个程序,统计各个数字、空白符(包括空格符、制表符及换行符)以及所有其他字符出现的次数。

6、重写标准库中的求幂函数:int pow(int x, int y)。

C语言实验报告 实验八 参考答案

C语言实验报告 实验八 参考答案

实验七八 函 数(一) 参考答案1.请编写程序sy8-1.cpp ,要求:(1)设计一个fun 函数用来计算并输出n (包括n )以内能被5 或9 整除的所有自然数的倒数之和。

(2)在主函数中输入数据,调用fun 函数,输出结果。

例如,若主函数从键盘给n 输入20后,则输出为s=0.583333。

【解题思路】用循环穷举1~n 之间各数,若余5等于0或余9等于0,则将其表示为倒数并累加即可。

注意分式若需要得到实数结果则必须至少有一个操作数是实数类型。

【参考答案】#include <stdio.h>double fun(int n){ double s=0;int i;for(i=1;i<=m;i++)if(i%5==0||i%9==0)s=s+1.0/i;return s;}main( ){ int n;double s;printf("\nInput n: ");scanf("%d",&n);s=fun(n);printf("s=%f\nlf",s);}2.请编写程序sy8-2.cpp ,要求:(1)设计一个fun 函数用来计算下列多项式的值。

(2)在主函数中输入数据,调用fun 函数,输出结果。

例如:若n 的值为11时,函数的值为1.83333【解题思路】根据多项式各项的变化规律可以看出各项的分子为常量1,分母是从1到n 累加和。

【参考答案】#include <stdio.h>float fun(int n){ float sum=0,s=0; //sum 存多项式的累加和,s 存分母的累加和int i;for(i=1;i<=n;i++){ s=s+i; //先求分母的累加sum=sum+1/s;}return sum;}main()n s ⋯++++⋯++++++=321132112111{int n; float s;printf("\nPlease enter n:");scanf("%d", &n);s = fun(n);printf("the result is: %f\n", s);}3.请编写程序sy8-3.cpp,要求:(1)设计一个fun函数,其功能是:将两个两位数的正整数a、b 合并形成一个整数放在c 中。

C语言实验8(附参考答案).docx

C语言实验8(附参考答案).docx

实验8:选择结构程序设计实验目的:(1) 学会正确使用逻辑运算符和逻辑表达式;(2) 熟练掌握if-else 语句,学习调试程序。

实验内容:定义语句:int a=l, b=2, c=3, x;则以下选项中各程序段执行 后,x 的值不为3的是 ____ Cx=b;if (a<2)x 二2;辻 (b<c) x 二c; if (a<l)x=l; if (c<a) x=a; 2、设y 是int 型变量,请写出判断y 为奇数的表达式是y%2=l 。

改成小写字母,其他字符不变,然后输出。

if x=2;A) if (c<a) x=l:(a<3) x=3;else if (b<a) x=2;else x=3; C) if (a<3) x=3;B) else if (a<2) elseD) if (a<b)3、程序填空: 从键盘上输入一个字符,如果是大写字母,将其main(){char a;scanf(n%c,\&a);if( a>=,A,&&av=Z ) a+=32;printf(,,%c M,a);}4、若从键盘输入5&则以下程序输出的结果是585858 。

main(){ int a;scanf (〃%d〃, &Q);i.f (a>50) printf ("%d", a);i.f (a>40) printf a);if (a>30) printf a);}5、已知int x=10, y=20, z=30;以下语句执行后x,y,z的值是B。

if (x>y) z二x; x二y; y二z;A) x=10, y二20, z=30 B) x=20, y二30, z=30C) x=20, y=30, z=10 D) x=20, y=30,z=20二、程序设计题1、(必做)有一函数「X X<1 2y=J 2x-l l=<x<10I 3x-ll x>=10 a①用scanf ()函数输入x的值,求y值。

C语言上机实验 答案

C语言上机实验 答案

实验一上机操作初步(2学时)一、实验方式:一人一机二、实验目的:1、熟悉VC++语言的上机环境及上机操作过程。

2、了解如何编辑、编译、连接和运行一个C程序。

3、初步了解C程序的特点。

三、实验内容:说明:前三题为必做题目,后两题为选做题目。

1、输出入下信息:(实验指导书P79)*************************Very Good*************************2、计算两个整数的和与积。

(实验指导书P81)3、从键盘输入一个角度的弧度值x,计算该角度的余弦值,将计算结果输出到屏幕。

(书P3)4、在屏幕上显示一个文字菜单模样的图案:=================================1 输入数据2 修改数据3 查询数据4 打印数据=================================5、从键盘上输入两个整数,交换这两个整数。

四、实验步骤与过程:五、实验调试记录:六、参考答案:1、#include <stdio.h>void main( ){ printf(“********************\n”);printf(“ Very Good\n”);printf(“********************\n”);}2、#include <stdio.h>void main( ){ int a,b,c,d;printf(“Please enter a,b:”);scanf(“%d,%d”,&a,&b);c=a+b; d=a*b;printf(“%d+%d=%d\n”,a,b,c);printf(“%d*%d=%d\n”,a,b,d);}3、#include <stdio.h>#include <math.h>void main( ){ double x,s;printf(“Please input value of x:”);scanf(“%lf”,&x);s=cos(x);printf(“cos(%lf)=%lf\n”,x,s);}4、#include <stdio.h>void main( ){ printf(“==================================\n”); printf(“ 1 输入数据 2 修改数据\n”);printf(“ 3 查询数据 4 打印数据\n”);printf(“===================================\n”);}5、#include <stdio.h>void main( ){ int x,y,t;printf(“Please enter x and y:”);scanf(“%d%d”,&x,&y);t=x; x=y; y=t;printf(“After swap:x=%d,y=%d\n”,x,y);}实验二简单的C程序设计(4学时)一、实验方式:一人一机二、实验目的:1、掌握C语言的数据类型。

《C语言程序设计》课后习题答案第八章

《C语言程序设计》课后习题答案第八章

8.1 编写两个函数,分别求两个证书的最大公约数和最小公倍数,用主函数调用这两个函数并输出结果,两个整数由键盘输入。

void main(){ int Mgy(int x,int y);int Mgb(int z);int a,b,mgy,mgb;printf("请输入两个数:\n");scanf("%d,%d",&a,&b);mgy=Mgy(a,b);mgb=Mgb(a,b,mgy);printf("两个数的最大公约数为%d,最小公倍数为%d\n",mgy,mgb);}int Mgy(int x,int y){ int r,temp;if(x<y){ temp=x;x=y;y=temp;}while(x%y!=0){ r=x%y;x=y;y=r;}return y;}int Mgb(int x,int y,int z){ return (x*y/z);}8.2 求方程ax²+bx+c=0的根,用三个函数分别求当b²-4ac大于零、等于零和小于零时的根,8.3编写一个判素数的函数,在主函数输入一个整数,输出是否是素数的信息。

#include<math.h>void main(){ int Isprime(int a);int m,temp=0;printf("请输入一个数:\n");scanf("%d",&m);temp=Isprime(m);if(temp==0) printf("%d不是素数。

\n",m);else printf("%d是素数。

\n",m);}int Isprime(int a){ int i,k,flag;if(a==0||a==1) flag=0;else{ k=sqrt(a);for(i=2;i<=k;i++)if(a%i==0) flag=0; }return flag; }8.8 写一个函数,输入一个4位数字,要求输出这4个数字字符,但每两个数字间空一格空8.9编写一个函数,由实参传来一个字符串,统计此字符串中字母、数字、空格和其他字符8.10 写一个函数,输入一行字符,将此字符串中最长的单词输出。

C语言实验题及参考答案

C语言实验题及参考答案

C语言实验题及参考答案1. 编写一个程序,要求用户输入一个整数n,然后输出1到n的所有整数。

```c#include <stdio.h>int main() {int n;printf("请输入一个整数n:");scanf("%d", &n);int i;for (i = 1; i <= n; i++) {printf("%d ", i);}return 0;}```2. 编写一个程序,要求用户输入一个整数n,然后输出1到n的所有奇数。

```c#include <stdio.h>int main() {int n;printf("请输入一个整数n:");scanf("%d", &n);int i;for (i = 1; i <= n; i += 2) {printf("%d ", i);}return 0;}```3. 编写一个程序,要求用户输入一个整数n,然后计算1到n的所有整数的和。

```c#include <stdio.h>int main() {int n;int sum = 0;printf("请输入一个整数n:");scanf("%d", &n);int i;for (i = 1; i <= n; i++) {sum += i;}printf("1到%d的和为%d\n", n, sum);return 0;}```4. 编写一个程序,要求用户输入一个整数n,然后计算1到n的所有奇数的和。

```c#include <stdio.h>int main() {int n;int sum = 0;printf("请输入一个整数n:");scanf("%d", &n);int i;for (i = 1; i <= n; i += 2) {sum += i;}printf("1到%d的奇数的和为%d\n", n, sum);return 0;}```5. 编写一个程序,要求用户输入一个整数n,然后判断n是否为素数。

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具体值。

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

实验八指针程序设计(2学时)
一、实验方式:一人一机
二、实验目的:
1、通过实验进一步掌握指针的概念,会定义和使用指针变量。

2、能正确使用指向数组和字符串的指针变量。

3、熟悉指针作为函数参数的编程特点。

三、实验内容:
说明:前两题为必做题目,后一题为选做题目。

要求用指针方法实现。

1、输入3个整数,按从小到大的次序输出。

(实验指导书P201)
2、数据交换。

实验要求:1)定义两个函数,分别为void swap1(int a,int
b)和void swap2(int *a,int *b),用于交换a,b的值。

2)从主函数中
分别输入两个整型变量a、b。

3)从主函数中分别调用上述两个交换函数,并打印输出交换后a、b的结果。

(实验指导书P90)
3、编写一个程序计算字符串长度的函数,模拟C的<string.h>函数库内的
计算字符串长度的函数strlen( )。

四、实验答案:
1:
#include<stdio.h>
void swap(int *p1,int *p2)
{
int p;
p=*p1;*p1=*p2;*p2=p;
}
void main()
{
int n1,n2,n3;
int *p1,*p2,*p3;
printf("please input three integer datas:");
scanf("%d %d %d",&n1,&n2,&n3);
p1=&n1,p2=&n2,p3=&n3;
if(n1<n2)
swap(p1,p2);
if(n1<n3)
swap(p1,p3);
if(n2<n3)
swap(p2,p3);
printf("After swap:\n");
printf("%d %d %d\n",n1,n2,n3);
}
2:
#include<stdio.h>
void swap1(int x,int y)
{
int z;
z=x,x=y,y=z;
}
void swap2(int *x,int *y)
{
int z;
z=*x,*x=*y,*y=z;
}
int main()
{
int a,b;
int *x,*y;
x=&a,y=&b;
printf("please input a=:");
scanf("%d",&a);
printf("\n b=:");
scanf("%d",&b);
swap1(a,b);
printf("\nAfter call swap1: a=%d b=%d",a,b);
swap2(x,y);
printf("\nAfter call swap2: a=%d b=%d\n",a,b);
return 0;
}。

相关文档
最新文档