C语言上机作业

合集下载

C语言上机题参考答案

C语言上机题参考答案
}
20、设有1<=n<=500个人围坐一圈并按顺时针方向从1到n编号,从第s个人开始进
行1到m的报数,报数到第m个人,此人出圈,再从他的下一个人重新开始1到m的
报数,如此进行下去直到所有的人都出圈为止。
要求按出圈次序输出编号。
输入格式如下:
n s m
示例:
输入:
6 1 3
输出:
3 6 4 2 5 1
scanf("%d",&n);
for(i=1;i<=n;i++)
{for(j=1;j<=i;j++)
printf("*");
printf("\n");
}
}
8、编程输出n行图形(n值通过键盘输入),
假设n=5,则图形如下:
*
**
***
****
*****
假设n=6,则图形如下:
*
**
***
****
*****
if(x>1) y=6*x+5;
printf("%d",y);
}
三、循环图形
7、编程输出n行图形(n值通过键盘输入)
假设n=5,则图形如下:
*
**
***
****
*****
假设n=6,则图形如下:
*
**
***
****
*****
******
#include<stdio.h>
void main()
{int i,j,n;
printf("%.2f\n",(a+b+c)/3.0);

C语言上机练习参考答案

C语言上机练习参考答案

C语言上机练习参考答案第1章C语言概述1-1编写程序,在屏幕上显示一个如下输出:---------------------------------Programming in C is fun!I love C language.---------------------------------1-2编写程序,在屏幕上显示一个如下图案:* * * ** * ** **1-3已知某个圆的半径,编写一个程序,用来计算并显示面积。

要求:将π定义为符号常量,并假设一个恰当的半径值。

OutputThe area of circle is: 78.501-4已知两个整数20和10,编写程序,自定义函数add( )将这两个数相加,自定义函数sub( )计算这两个数的差,并按照下面形式显示计算结果:20+10=3020-10=10Output20 + 10 = 3020 – 10 = 101-5 已知变量a 、b 和c 的值,编写程序,用来计算并显示x 的值,其中cb a -=x 请分别用以下数值运行该程序(1)a=250,b=85,c=25(2)a=300,b=70,c=80Output (1)x = 4.17Output (2)x = -30.00第2章 常量、变量及数据类型 & 第3章 运算符和表达式 3-1 编写程序,求华氏温度100o F 对应的摄氏温度。

计算公式如下: 9)32(5-⨯=f c 式中:c 表示摄氏温度,f 表示华氏温度。

(c 定义为实型,f 定义为整型)Output Celsius degree (corresponding to 100 Fahrenheit) is: 37.78.3-2 一个物体从100m 的高空自由落下,编写程序,求它在前3s 内下落的垂直距离。

设重力加速度为10m/s 2。

要求,将重力加速度定义为符号常量,尝试将其改为9.8 m/s 2,看结果有何不同?OutputThe falling vertical distance (in 3 seconds) is:45.00.3-3将球的半径R定义为符号常量,计算球的表面积(4πR2)和体积(4/3*πR3)。

C语言上机(20道)

C语言上机(20道)

1、从键盘输入三个数,输出这三个数中最大的数main(){int a,b,c,max;scanf("%d%d%d",&a,&b,&c);if(a>b) max=a;else max=b;if(c>max) max=c;printf("max=%d\n",max);}3、给一个分段函数,设计一个程序,要求从键盘输入x,输出ymain(){ float x,y;scanf("%f",&x);if(x>0) y=3*x+5;if(x==0) y=7;if(x<0) y=5*x;printf("%f\n",y);}4、求1+2+…+n,n由键盘输入main(){ int i,s,n;scanf("%d",&n);for(s=0,i=1;i<=n;i++)s=s+i;printf("%d\n",s);}5、求1*2*…*n(即n!),n由键盘输入main(){int i, n; long s;scanf( "%d",&n);for(i=1,s=1; i<=n; i++)s=s*i;printf("%ld\n",s);}6、求1!+2!…+n!,n由键盘输入main(){int i,n; long s,f;scanf("%d",&n);s=0;f=1;for(i=1; i<=n; i++){ f=f*i; s=s+f; }printf("%ld\n",s); }7:输出100以内(不含100)能被3整除且个位数为6的所有整数(P97)main(){int i,j;for(i=0;i<10;i++){j=i*10+6;if(j%3!=0)continue;printf("%4d",j);}}8、求两个正整数的最大公因子和最小公倍数(P82)main(){ int m,n,r,p;scanf("%d%d",&m,&n);p=m*n; r=m%n;while(r){m=n; n=r;r=m%n; }printf("%d,%d\n",n,p/n);}9、将一个整数的各位数字颠倒后输出(P84)main(){ int i,r;scanf("%d",&i);do{r=i%10;printf("%d",r);i=i/10; }while(i!=0);printf("\n");}10、求Fabonacci数列的前20项,每5个数一换行。

C语言上机作业试题5套含答案

C语言上机作业试题5套含答案

第一次上机作业(2021):要求:独立完成,上机调试通事后上交作业提交邮件主题命名:班级学号姓名(第1次作业),例如:电1301班2王鹏(第1次作业)以附件形式将每次作业的所有程序源程序紧缩打包后提交,紧缩文件命名格式同上。

程序必需采用缩进格式1.大写字母转换成小写字母从键盘输入一个大写英文字母,输出相应的小写字母。

例:输入G输出g2.求平方根输入一个实数x,计算并输出其平方根(保留1 位小数)。

例:输入17输出The square root of is3.温度转换设计一个程序将华氏温度转换成摄氏温度c = 5/9(f-32)a)输入华氏温度(实型)b)输出的摄氏温度结果保留两位小数例:Please input Fahrenheit temperature:The corresponding Celsius temperature is4. 计算旅途时刻输入二个整数time1 和time2,表示火车的起身时刻和抵达时刻,计算并输出旅途时刻。

(输入的有效的时刻范围是0000 到2359,不需要考虑起身时刻晚于抵达时刻的情形。

)例:输入712 1411 (起身时刻是7:12,抵达时刻是14:11)输出The train journey time is 6 hours 59 minutes.5. 数字加密输入一个四位数,将其加密后输出。

方式是将该数每一名上的数字加9,然后除以10 取余,做为该位上的新数字,最后将第1 位和第3 位上的数字互换,第2 位和第4 位上的数字互换,组成加密后的新数。

例:输入1257输出The encrypted number is 4601试探题:你可否编程找出谁做的好事?有四位同窗中的一名做了好事,不留名,夸奖信来了以后,校长问这四位是谁做的好事。

⏹A说:不是我。

⏹B说:是C。

⏹C说:是D。

⏹D说:他乱说。

已知三个人说的是实话,一个人说的是谎话。

此刻要依照这些信息,找出做了好事的人。

c语言上机练习

c语言上机练习

一、程序改错题功能:打印出杨辉三角形(要求打印出10行).#include"stdio.h"main(){ int i,j; int a[10][10]; printf("\n");for(i=1;i<10;i++){ a[i][0]=1; a[i][i]=1; }for(i=1;i<10;i++)for(j=1;j<i;j++)a[i][i]=a[i-1][j-1]+a[i-1][j];for(i=0;i<10;i++){ for(j=0;j<=i;j++)printf("%5d",a[i][j]);printf("\n"); getch();}}二、程序填空题功能:将一个字符串中的前N个字符复制到一个字符数组中去,不允许使用strcpy函数。

main ( ){ char str1[80],str2[80]; int i,n;gets(【?】);scanf("%d",&n);for (i=0; 【?】 ;i++)【?】;【?】;printf("%s\n",str2);}三、程序设计题功能:编写函数fun求s=1^k+2^k +3^k + ......+N^k的值,(1的K次方到N 的K次方的累加和)。

#define K 4 #define N 5 #include "stdio.h"long fun(int n,int k){ /**********Program**********//********** End **********/ }main(){ long int sum;printf("Sum of %d powers of integers from 1 to %d = ",K,N);sum=fun(N,K); printf("%ld\n",sum);}一、程序改错题功能:编写一个程序模拟袖珍计算器的加、减、乘、除四则运算。

c语言上机练习共35篇

c语言上机练习共35篇

c语言上机练习共35篇C 语言程序上机实训题上机练习一一、程序改错题:程序功能:求 100 以内的偶数之和. #include "stdio.h" main() { int i,sum=1; sum+=i; printf("Sum=%d \n";sum); getch(); } 二、程序填空题:程序功能:输入数组最大的与最后一个元素交换,最小的与第一个元素交换,输出数组。

main() { int number[10]; input(number); max_min(number); output(number);} input(int number[10]) { int i; for(i=0;【?】;i++) scanf("%d,",&number[i]); scanf("%d",&number[9]);} max_min(int array[10]) { int max,min,k=0,l=0,t,p,; max=min=array[0]; for(p= 1;pmax) {max= array[p];k=p;} else if(array[0] /**********End **********/} main() { int m; printf("Enter m: "); scanf("%d", &m); printf("\nThe result is %ld\n", fun(m)); }1C 语言程序上机实训题上机练习二一、程序改错题:功能:求 1 到 10 的阶乘的和。

main() { int i; float t,s=0; float fac(int n); for(i=1;i #include 【?】 main() { float a,b,c,disc,x1,x2,realpart,imagpart;scanf("%f%f%f",&a,&b,&c); printf("the equation"); if(【?】/********** }End **********/2C 语言程序上机实训题上机练习三一、程序改错题:功能:将一个正整数分解质因数。

C语言上机100题

C语言上机100题

一、填空题考试做题要求:1、在__1__处填写正确的答案,并将下划线和数字删除。

2、将题目做完之后一定要保存。

3、不能删除/**********found**********/,也不能多行或少行。

1、给定程序中,函数fun的功能是根据形参i的值返回某个函数的值。

当调用正确时, 程序输出:x1=5.000000, x2=3.000000,x1*x1+x1*x2=40.000000请在程序的下划线处填入正确的内容并把下划线删除, 使程序得出正确的结果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!#include <stdio.h>double f1(double x){ return x*x; }double f2(double x, double y){ return x*y; }/**********found**********/__1__ fun(int i, double x, double y){ if (i==1)/**********found**********/return __2__(x);else/**********found**********/return __3__(x, y);}main(){ double x1=5, x2=3, r;r = fun(1, x1, x2);r += fun(2, x1, x2);printf("\nx1=%f, x2=%f, x1*x1+x1*x2=%f\n\n",x1, x2, r);}2、程序通过定义学生结构体数组,存储了若干名学生的学号、姓名和3门课的成绩。

函数fun的功能是将存放学生数据的结构体数组,按照姓名的字典序(从小到大)排序。

#include <stdio.h>#include <string.h>struct student {long sno;char name[10];float score[3];};void fun(struct student a[], int n){ /**********found**********/__1__ t;int i, j;/**********found**********/for (i=0; i<__2__; i++)for (j=i+1; j<n; j++)/**********found**********/if (strcmp(__3__) > 0){ t = a[i]; a[i] = a[j];a[j] = t; }}main(){ struct student s[4]={ {10001,"ZhangSan", 95, 80, 88}, {10002,"LiSi", 85, 70, 78}, {10003,"CaoKai", 75, 60, 88},{10004,"FangFang", 90, 82, 87}};int i, j;printf("\n\nThe original data :\n\n");for (j=0; j<4; j++){printf("\nNo:%ldName:%-8sScores: ",s[j].sno, s[j].name);for (i=0; i<3; i++)printf("%6.2f ", s[j].score[i]);printf("\n");}fun(s, 4);printf("\n\nThe data after sorting:\n\n");for (j=0; j<4; j++){ printf("\nNo: %ld Name: %-8sScores: ",s[j].sno, s[j].name);for (i=0; i<3; i++)printf("%6.2f ", s[j].score[i]);printf("\n");}}3、给定程序中,函数fun的功能是:计算形参x所指数组中N个数的平均值(规定所有数均为正数),作为函数值返回;并将大于平均值的数放在形参y所指数组中,在主函数中输出。

C语言作业及上机习题(仅供参考)

C语言作业及上机习题(仅供参考)

第一次课熟悉win-TC编译环境、熟悉C语言程序结构1.使用C 语言编译环境,输入下面的源程序。

将你的程序命名为hello.c,然后编译运行它。

/* program writes the words "Hello, world" to the screen *File : Hello.c* By : NJCIT* Date : 07-03-09*/#include <stdio.h>main(){printf("Hello, world\n");return(0);}2.main() /*求两数之和*/{int a,b,sum; /* 这是变量定义*/a=123;b=456;sum=a+b;printf(“sum is %d\n”,sum);}问题:1.一个C语言源程序从哪里开始执行?2. C程序的函数由几部分构成?3. ANSI C 中的注释内容是用什么符号界定?第二次课熟悉printf()函数、常见转义字符及各种数据类型的输出格式1.2. main(){int a=5,b=7,c=-1;float x=67.8564,y=-789.124;char c=‘A’;long n=1234567;unsigned u=65535;printf(“%d%d\n”,a,b);printf(“%3d%3d\n”,a,b);printf(“%f,%f\n”,x,y);printf(“%-10f%-10f\n”,x,y);printf(“%8.2f,%8.2f,%.4f,%.4f,%3f,%3f\n”,x,y,x,y,x,y);printf(“%e,%10.2e\n”,x,y);printf(“%c,%d,%o,%x\n”,c,c,c,c);printf(“%ld,%lo,%x\n”,n,n,n);printf(“%u,%o,%x,%d\n”,u,u,u,u);printf(“%s,%5.3s\n”,”COMPUTER”,”COMPUTER”);}3. 假设下面的例子都是完整程序的一部分,那么他们每一个将会输出什么?4.加载,编译并运行下面的程序。

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

1.输入十个整数,分别输出这10个数再计算并输出它们的和。

源程序:#include<stdio.h>void main(){int i,sum=0;int a[10];printf("input 10 intergers:\n");for(i=0;i<=9;i++){scanf("%d",&a[i]);}for(i=0;i<=9;i++){sum+=a[i];printf("%d ",a[i]);}printf("sum=%d\n",sum);}运行结果:2.输入10个不同的数,将它们存入数组a中,在输入一个数x。

然后在数组中查找x。

如果找到,则输出相应下标,否则输出“not found”。

源程序:#include<stdio.h>void main(){int a[10],i,j,x;printf("Input data of a[10]:\n");for(i=0;i<10;i++){scanf("%d",&a[i]);}printf("Input x:");scanf("%d",&x);for(j=0;j<10;j++){if(x==a[j]){printf("%d\n",j);goto L1;}}printf("not found\n");L1: ;}运行结果:3.输入一个整数n(1<n<=10),再输入n个整数,将它们存入数组a中:(1)输出最小值和对应的下标:源程序:#include<stdio.h>void main(){int n,i,s,min,a[10];printf("Input a interger n(1<n<=10):\n");scanf("%d",&n);printf("Input data of a[10]:\n");for(i=0;i<n;i++){scanf("%d",&a[i]);}min=a[0];for(i=0;i<n;i++);{if(min>a[i])min==a[i];}for(i=0;i<n;i++){if(a[i]==min)s=i;}printf("\n%d,%d\n",min,s);}运行结果:(2)将最小值与第一个数交换,输出交换后的n个数。

源程序:#include<stdio.h>void main(){int n,i,s,p,min,a[10];printf("Input a interger n(1<n<=10):\n");scanf("%d",&n);printf("Input data of a[10]:\n");for(i=0;i<n;i++){scanf("%d",&a[i]);}min=a[0],p=0;for(i=0;i<n;i++){if(a[i]<min)p=i;}if(p!=0){i=a[0];a[0]=min;a[p]=i;}printf("the array:");for(i=0;i<n;i++)printf("%d\n",a[i]);}运行结果:4.编一函数,把一个字符串中从第i个字符开始的n个字符保存在另一个字符串数组中,并输出。

源程序:#include<stdio.h>void main(){char str1[40],str2[40]={0};int i,j,n;printf("Please input the string(length<40):\n");scanf("%s",&str1);j=0;while(str1[j]!='\0')j++;printf("please input the number i(<=%d)\n",j-1);scanf("%d",&i);printf("please input the number n(<=%d)\n",j-i-1);scanf("%d",&n);for(j=0;j<=n-1;j++)str2[j]=str1[i+j];printf("%s\n",str2);}5.编写程序:由键盘任意输入一串字符,判断是否为回文。

回文是首位对称相等的字符串,如:abcdcba. 源程序:#include<stdio.h>#include<string.h>void main(){char str[80]={0};int i,j,len;printf("please input a string;\n");scanf("%s",str);len=strlen(str);for(i=0,j=len-1;i<j;i++,j--){if(str[i]==str[j])continue;elsebreak;}if(i>=j)printf("你输入的是回文!\n");elseprintf("你输入的不是回文!\n");}运行结果:6.编写程序,验证下列矩阵是否为魔方阵。

魔方阵是每一行,每一列,每一对角线上的和都是相等的矩阵。

源程序:#include<stdio.h>void main(){int a[5][5]={{17,24,1,8,15},{23,5,7,14,16},{4,6,13,20,22},{10,12,19,21,3},{11,18,25,2,9}};int i,j,sum[12]={0};printf("the array is:\n");for(i=0;i<5;i++){for(j=0;j<5;j++)printf("%3d",a[i][j]);printf("\n");}for(i=0;i<5;i++)for(j=0;j<5;j++){sum[i]+=a[i][j];sum[i+5]+=a[i][j];}for(i=0;i<11;i++)if(sum[i]!=sum[i+1])break;if(i>=11)printf("\n这个矩阵是魔方阵\n");elseprintf("\n这个矩阵不是魔方阵\n"); }运行结果:7.编写程序,由键盘输入一串字符,再输入一个字符,统计这个字符在这串字符中出现的次数。

源程序:#include<stdio.h>#include<string.h>void main(){char str[20]={0},ch;int i,len,c=0;printf("please input the string(length<20):\n");scanf("%s",&str);printf("please input a char:\n");scanf("%s",&ch);len=strlen(str);for(i=0;i<len;i++)if(ch==str[i])c++;printf("%d\n",c);}运行结果:8.编写程序,由键盘任意输入一串字符,再输入一字符和一个位置,将此字符插入这个字符串的这个位置上。

如原来为abcdef,输入字符k,位置是3,新串为abkcdef。

源程序:#include<stdio.h>#include<string.h>void main(){char ch,str[20]={0};int position,len,i;printf("input the string:\n");scanf("%s",&str);len=strlen(str);printf("input a char to insert:=\n");scanf("%s",&ch);printf("input the position :\n");scanf("%d",&position);if(position==len)str[position]=ch;elseif(position<0)printf("the position is error!\n");else{for(i=len;i>=position;i--)str[i]=str[i-1];str[position-1]=ch;puts(str);}putchar('\n');}运行结果:。

相关文档
最新文档