C语言题库编程河南工业大学河工大c语言期末
C语言题库(编程)河南工业大学河工大c语言期末考试题库
二、编程题
1.有一函数:当x<0时,y=-1;当x=0时,y=0;当x>0时,y=1。
编一程序,输入x的值,输出y的值。
#include<stdio.h>
void main()
{
int x,y;
printf("请输入x:");
scanf("%d",&x);
if(x<0)
y=-1;
else if(x=0)
y=0;
else
y=1;
printf("y=%d",y);
}
2.输入三个实数,将这三个数按由大到小的顺序排列,并输出这三个数。#include<stdio.h>
void main()
{int a,b,c,temp=0;
printf("please input a,b,c: ");
scanf("%d %d %d",&a,&b,&c);
if(a<b) {temp=a;a=b;b=temp;}
if(a<c){temp=a;a=c;c=temp;}
if(b<c){temp=b;b=c;c=temp;}
printf("从大到小为:%d,%d,%d\n",a,b,c);
}
3.有三个整数a,b,c,由键盘输入,输出其中最大者。
void main()
{
int a,b,c,max;
printf("输入三个数字:\n");
scanf("%d%d%d",&a,&b,&c);
if(a>b&&a>c)
max=a;
if(b>a&&b>c)
max=b;
if(c>a&&c>b)
max=c;
printf("最大值是: %d\n",max);
}
4.编程求圆面积、圆周长。要求圆半径由键盘输入,输出时要求有文字说明,取小数点后两位数字。
#include<stdio.h>
#define pi 3.1416
main()
{
float r,l,s;
printf("请输入半径:\n");
scanf("%f",&r);
l=2*pi*r;
s=pi*r*r;
printf("l=%7.2f\ns=%7.2f\n",l,s);
}
5. 【有点难】有分段函数:当x<-10时,y=|x|+5;当-10≤x≤10时,y=4x-8;当x>10时,y=sqrt(x)。
编一程序,输入x的值,输出y的值。
6.编写程序,判断某一年是否是闰年。(闰年的条件是:能被4整除,但是不能被100整除,或者可以被400整除。)
#include <stdio.h>
int main()
{
int year,leap;
scanf("%d",&year);
if (year%4==0)
{
if(year%100==0)
{
if(year%400==0)
leap=1;
else
leap=0;
}
else
leap=1;
}
else
leap=0;
if (leap)
printf("%d is ",year);
else
printf("%d is not ",year);
printf("a leap year.\n");
return 0;
}
7.输入一个华氏温度,要求输出摄氏温度,输出时要求有文字说明,取小数点后两位数字。公式为c=5/9(f-32)
#include<stdio.h>
int main()
{
float f,c;
printf("输入华氏温度:\n");
scanf("%f",&f);
c=(f-32)/1.8;
printf("对应的摄氏温度是:%5.2f\n",c);
}
8.有一函数:当x<1时,y=|x|;当1<=x<10时,y=2x-1;当x>=10时,y=3x+11。
编一程序,输入x的值,输出y的值。
9.输入三个实数,将这三个数按由小到大的顺序排列,并输出这三个数。
#include<stdio.h>
void main()
{int a,b,c,temp=0;
printf("please input a,b,c: ");
scanf("%d %d %d",&a,&b,&c);
if(a>b) {temp=a;a=b;b=temp;}
if(a>c){temp=a;a=c;c=temp;}
if(b&g
t;c){temp=b;b=c;c=temp;}
printf("从小到大为:%d,%d,%d\n",a,b,c);
}
10.输入一个字符,判断它是否是小写字母,如果是,将它转换成大写字母;如果不是,不转换。然后输出最后得到的字符。
#include<stdio.h>
#include<string.h>
void main()
{
cha
r a;
scanf("%c",&a);
if(islower(a))
a=a-32;
printf("%c\n",a);
}
11.编程求圆柱体积,圆柱表面积。要求圆半径,圆柱高由键盘输入,输出时要求有文字说明,取小数点后两位数字。
#include <stdlib.h>
int main(int argc, char *argv[])
{
float r,h,l,s,sq,vq,vz;
float pi=3.1415926;
printf("请输入圆的半径r,圆柱高h:");
scanf("%f,%f",&r,&h);
l=2*pi*r;
s=pi*r*r;
sq=4*pi*r*r;
vq=4.0/3.0*pi*r*r;
vz=pi*r*r*h;
printf("圆周长为:l=%6.2f\n",l);
printf("圆面积为:s=%6.2f\n",s);
printf("圆球表面积为:sq=%6.2f\n",sq);
printf("圆球体积为:vq=%6.2f\n",vq);
printf("圆柱体积为:vz=%6.2f\n",vz);
system("PAUSE");
return 0;
}
12.有分段函数:当x<-5时,y=x+10; 当-5≤x≤5时,y=x^2;当x>5时,y=2x-10.
编一程序,输入x的值,输出y的值。
13.有三个整数a,b,c,由键盘输入,输出其中最小者。
#include <stdio.h>
int main()
{
int a,b,c,temp,min;
printf("请输入三个整数:");
scanf("%d,%d,%d",&a,&b,&c);
temp=(a<b)? a:b;
min=(temp<c)? temp:c;
printf("三个数中最小数是%d\n",min);
return 0;
}
14.输入一个字符,判断它是否是大写字母,如果是,将它转换成小写字母;如果不是,不转换。然后输出最后得到的字符。
#include <stdio.h>
void main()
{
char c;
printf("input ch:");
c=getchar();
if( c>='A'&&c<='Z')
{
c=c+32;
printf("%c",c);
}
else printf("%c",c);
}
15.输入三角形的三边长,求三角形面积。求三角形面积的公式为
area=sqrt(s(s-a)(s-b)(s-c)),其中s=(a+b+c)/2
#include<stdio.h>
#include<math.h>
void main()
{
float a,b,c,s,area;
printf("依次输入a,b,c:");
scanf("%f%f%f,",&a,&b,&c); s=(float)0.5*(a+b+c);
area = (float)sqrt(s*(s-a)*(s-b)*(s-c));
printf("面积为:%7.2f",area);
}
16.编程求2!+4!+6!+8!+10!的值,并输出结果。
#include<stdio.h>
int main()
{
int n=1,sum=0,j,m=1,i;
for(i=1;i<=5;i++){
m=1;
for(j=1;j<=2*i;j++)
m=m*j;
sum=sum+m;
}
printf("sum=%d\n",sum);
return 0;
}
17.猴子吃桃问题。猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。
第二天早上又将剩下的桃子吃掉一半,又多吃一个。以后每天早上都吃了前
一天剩下的一半零一个。
到第10天早上想吃时就剩一个桃子了。求第一天共摘了多少个桃子。
#include<stdio.h>
void main()
{
int day; static x1=1;
day=10;
while(day>0)
{
x1=(x1+1)*2;
day--;
}
printf("桃子总数=%d\n",x1);
18.输出所有的“水仙花数”,所谓“水仙花数”是指一个3位数,其各位数字立方和等于该数本身。
#include<stdio.h>
int main()
{
int i,j,k,n;
printf("水仙花数是");
for(n=100;n<1000;n++)
{
i=n/100;
j=n/10-i*10;
k=n%10;
if(n==i*i*i+j*j*j+k*k*k)
printf("%d ",n);
}
printf("\n");
return 0;
}
19.编程求1~100之间的所有素数,并输出结果。
#include <stdio.h>
int main(void)
{
int a[100],i,j;
for (i = 0; i<100; i++) a[i]=i+1;
for (i=1; i<100; i++)
for (j=i+1; j<100; j++)
if (a[i]&&a[j]%a[i]==0)
a[j]=0;
for (i = 1; i<100; i++)
if (a[i]) printf("%d\t",a[i]);
return 0;
}
20.编程求1!+3!+5!+7!+9!的值,并输出结果。#include<stdio.h>
int main()
{
int n=1,sum=0,j,m=1,i;
for(i=1;i<=5;i++){
m=1;
for(j=1;j<=2*i-1;j++)
sum=sum+m;
}
printf("sum=%d\n",sum);
return 0;
}
21.用pi/4≈1-1/3+1/5-1/7+...公式求pi的近似值的绝,直到某一项对值小于10的-6次方为止。
#include<stdio.h>
#include<math.h>
int main()
{
int sign=1;
double pi=0.0,n=1.0,term=1.0;
while(fabs(term)>=1e-6)
{pi=pi+term;
n=n+2;
sign=-sign;
term=sign/n;
}pi=pi*4;
printf("pi=%10.8f\n",pi);
}
22.一个球从100m高度自由落下,每次落地后又反跳回原高度的一半,再落下,再反弹。求它在第10次落地时共经过多少米?
#include "stdio.h"
#include "stdio.h"
main()
{
float sn=100.0,hn=sn/2;
int n;
for(n=2;n<=10;n++)
{
sn=sn+2*hn;/*第n次落地时共经过的米数*/
hn=hn/2; /*第n次反跳高度*/
}
printf("the total of road is %f\n",sn);
getch();
}
23.输入两个正整数m和n,求其最大公约数和最小公倍数。
#include <stdio.h>
int main()
{
int p,r,n,m,temp;
printf("请输入两个正整数n,m:");
scanf("%d%d,",&n,&m);
if (n<m)
{
temp=n;
n=m;
m=temp;
}
p=n*m;
while(m!=0)
{
r=n%m;
n=m;
m=r;
}
printf("它们的最大公约数为:%d\n",n);
printf("它们的最小公约数为:%d\n",p/n); return 0;
}
24.利用循环,编程求1!+2!+3!+…+10!的值,并输出结果。
main()
{
int i,j,n,sum=0;
for(i=1;i<=10;i++)
{
n=1;
for(j=1;j<=i;j++)
n*=j;
sum+=n;
}
printf("%d\n",sum);
}
25.有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13......,求出这个数列前20项之和。
#include<stdio.h>
main()
{ int i,x,y,a;
float sum=0;
x=2;
y=1;
for(i=1;i<20;i++)
{
sum+=(float)(x)/y;
// printf("%d/%d\n",x,y);
a=x;
x=x+y;
y=a;
}
printf("%7.5f\n",sum);
}
26.求Fibonacci数列前40个数。这个数列有以下特点:第1和第2个数为1,从第3个数开始,该数是其前面两个数之和。
#include<stdio.h>
#define N 4
long fibonacci(int n)
{
if (0==n||1==n) return 1;
else
return fibonacci(n-1)+fibonacci(n-2);
}
int main(void)
{
int i;
printf("Fibonacci数列的前40项\n");
for (i=0; i<40;)
{
printf("%-10ld",fibonacci(i++));
if(i%N==0) printf("\n");
}
printf("\n");
return 0;
}
27.一个数如果恰好等于它的因子之和,这个数就称为完数。例如,6的因子为1、2、3,而6=1+2+3,因此6是完数。编程求10
00以内所有完数。
#include<stdio.h>
void main()
{
int i,j;
int sum;
for(i=2;i<1000;i++)
{
sum=0;
for(j=1;j<i;j++)
if(i%j==0)
sum=sum+j;
if(sum==i)
printf("%d是完数\n",sum);
}
}
28.求S=a+aa+aaa+...+aa...a(n个a)之值。其中a是一个数字,n代表a的位数。例如:2+22+222+2222+22222(此时n为5),n由键盘输入。
#include <stdio.h>
int main()
{
int a,n,i=1,sn=0,tn=0;
printf("a,n=:");
scanf("%d,%d",&a,&n);
while(i<=n)
{tn=tn+a;
哈工大c语言 练习题
求用户输入得两个数得商,程序运行时,以如下格式输入数据: Input twointegers:42↙ 请改正程序中得错误,使它能得出正确得结果。 #include<stdio、h> main() { inta, b, c; printf("Input two integers:"); scanf("%d,%d",&a, &b); c= a\b; printf("Thequotient ofaandbis:%d", c); } #include〈stdio.h> int main() { ?inta,b,c; printf("Inputtwointegers:"); 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 WITHwidth and precision specifications:\n" "circumference=%7、2f, area = %7。2f\n” 程序运行示例如下: Input r:5。3 printf WITHOUT width or precision specifications: circumference =33、300854,are a=88.247263 printf WITHwidthand precision specifications: circumference = 33。30, area = 88、25 #include〈stdio。h> int main() { const double PI=3.14159; double r; printf(”Inputr:"); scanf("%lf”, &r); printf("printf WITHOUT width orprecision specification s:\n"); printf("circumference = %f, area= %f\n",2*PI*r,PI*r*r); printf("printf WITHwidth and precisionspecifications:\n”); ?printf("circumference=%7.2f, area =%7、2f\n",2*PI*r,PI*r*r); return 0; } 写一个程序,将接收得华氏温度转换为对应得摄氏温度。程序应显示如下得提示信息: Please inputfahr: 然后输入一个十进制数并回车,然后程序以合适得消息形式输出转换后得华氏温度。程序使用如下得公式完成转换:摄氏温度= 5.0 *(华氏温度–32.0)/ 9.0 输入格式要求:"%lf" 提示信息:"Pleaseinput fahr: ” 输出格式要求:"Thecelsis: %.2f" #include <stdio。h〉 #include<stdlib.h> int main() { doublef; double c; printf(”Please input fahr: "); scanf("%lf",&f); c=5、0*(f-32.0)/9.0; printf("Thecels is: %、2f”,c);
北京理工大学网络教室C语言编程题库及答案(绝对经典)
北京理工大学网络教室C语言编程题库及答案(绝对经典)
1.Hello world. 输入:无 输出:Hello world. 程序: #include
输出:整数1+整数2=和 程序: #include
编写一个小程序,要求输出的是 4 行由*号组成的等腰三角形。 程序: #include
哈工大C语言课程设计
H a r b i n I n s t i t u t e o f T e c h n o l o g y 课程设计说明书(论文) 课程名称:C语言课程设计 设计题目:音乐程序与波特图 院系:航天学院控制科学与工程系 班级: 设计者: 学号: 指导教师: 设计时间: 哈尔滨工业大学教务处 哈尔滨工业大学课程设计任务书
题目一 1.1题目详细描述: 播放音乐程序,实现了自选音乐曲目和直接使用键盘弹奏,而且可以在曲目播放结束后循环选择乐曲。 1.2程序设计思路及流程图: 1.3 #include
C0=262,D0=296,E0=330,F0=349,G0=392,A0=440,B0=494, C1=523,D1=587,E1=659,F1=698,G1=784,A1=880,B1=988, C2=1047,D2=1175,E2=1319,F2=1397,G2=1568,A2=1760,B2=1976,S=10 }; typedef enum NOTES SONG; SONG song1[]={C0,N4+N2,E0,N4,G0,N2,G0,N2,A0,N1,G0,N1,E0,N4+N2, C0,N4,G0,N1/3,G0,N1/3,G0,N1/3,E0,N1,C0,N1,G10,N1/3,G10,N1/3, G10,N1/3,G10,N1/3,G10,N1/3,G10,N1/3,C0,N1,END,END}; SONG song2[]={A0,N2,B0,N2,C1,N1+N2,B0,N2,C1,N1,E1,N1,B0,N1+N1,S,N1,E0,N1, A0,N1+N2,G0,N2,A0,N1,C1,N1,G0,N1+N1,S,N1,E0,N2,E0,N2,F0, N1+N2,E0,N2,F0,N1,C0,N1,E0,N1+N1,S,N1,C1,N2,C1,N2,B0,N1+N2,370, N2,F0,N1,B0,N1,B0,N1+N2,S,N1,A0,N2,B0,N2,C1,N1+N2,B0,N2,C1,N1, E1,N1,B0,N1+N2,END,END}; int main() { int m,n,c=1; char b='y'; while(b=='y') { printf("Hello,what do you want to do by this program?\n"); printf("1.Listen to music.-------Press 1\n"); printf("2.Play music by yourself.-------Press 2\n"); scanf("%d",&m); while(m!=1&&m!=2&&m!=3) /*选择方式*/ { printf("You typed wrong!Do not push me around.:(\n"); scanf("%d",&m); } if(m==1) { printf("I have two musics,choose one!(Press 1/2)\n"); scanf("%d",&n); while(n!=1&&n!=2) { printf("You typed wrong!Do not push me around.:(\n"); scanf("%d",&n); } playmusic(n,&c); } else if(m==2) { typemusic(); } getchar(); printf("Do you want to continue?(y/n)\n"); scanf("%c",&b);
哈工大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
哈工大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; | } 写一个程序,将接收的华氏温度转换为对应的摄氏温度。程序应显示如下的提示信息: Please input fahr: 然后输入一个十进制数并回车,然后程序以合适的消息形式输出转换后的华氏温度。程序使用如下的公式完成转换:摄氏温度= *(华氏温度–)/ 输入格式要求:"%lf" 提示信息:"Please input fahr: " 输出格式要求:"The cels is: %.2f" #include <> | #include <> int main() { double f; double c;
北京工业大学C语言作业3-分支
1. 计算个人所得税 1.1. 题目要求 输入一个职工的月薪salary,输出应交的个人所得税tax(保留2位小数)。tax = rate *(salary-850) 当 salary <= 850 时,rate = 0; 当 850 < salary <= 1350 时,rate =0.0 5; 当 1350 < salary <= 2850 时,rate = 0.10; 当 2850 < salary <= 5850 时,rate = 0.15; 当 5850 < salary 时,rate = 0.20; 1.2. 测试结果(输入结束回车符用<回车>表示) (1)输入:800<回车> 输出:tax=0.00 (2)输入:4010<回车> 输出:tax=474.00 (3)输入:2850<回车> 输出:tax=200.00 2. 输出水果单价 2.1. 题目要求 以下4种水果的单价分别是3.00元/公斤,2.50元/公斤,4.10元/公斤,10.20元/公斤。 [1] apples [2] pears [3] oranges [4] grapes 输入水果的编号,输出该水果的单价(保留2位小数)。如果输入不正确的编号,显示单价为0。 2.2. 测试结果(输入结束回车符用<回车>表示) (1)输入:3<回车> 输出: [1] apples [2] pears [3] oranges
[4] grapes price=4.10; (2)输入:5<回车> 输出: [1] apples [2] pears [3] oranges [4] grapes price=0.00 3. 输出大小写字母 3.1. 题目要求 输入一个字符,如果它是大写字母,输出相应的小写字母;如果它是小写字母,输出相应的大写字母;否则,原样输出。 3.2. 测试结果(输入结束回车符用<回车>表示) (1)输入:F<回车> 输出:f (2)输入:y<回车> 输出:Y (3)输入:=<回车 输出:= 附加题:(选做) 4. 计算旅途时间 4.1. 题目要求 输入2个整数time1和time2,表示火车的出发时间和到达时间,计算并输出旅途时间。 有效的时间范围是0000到2359,不需要考虑出发时间晚于到达时间的情
北京工业大学c语言练习1
一、读程序写出运行结果: 1.若从键盘输入58,则以下程序段的输出结果是(): int main(void) { int a; scanf(“%d”,&a); if (a>50) printf(“%d”,a); if(a>40) printf(“%d”,a); if(a>30) printf(“%d”,a); return 0; } 2.下列程序运行的输出结果是(): int main(void) { char c=’b’; int k=4; switch(c) { case ‘a’: k=k+1; break; case ‘b’: k=k+2; case ‘c’: k=k+3; } printf(“%d\n”,k); return 0; } 二、编程题 1.键盘输入一个三位整数,输出该数的各位数字 本题要求编写程序,输出一个三位整数的个位数字、十位数字和百位数字的值。输入格式: 输入152。 输出格式: 按照以下格式输出:
2.将x的平方赋值给y 键盘输入x的值,计算x的平方并赋值给y,分别以“y = x ? x”和“x ? x = y”的形式输出x和y的值。 输入格式: 输入一个整数3 输出格式: 按照下列格式输出代入x=3的结果: y = x * x x * x = y 3. 本题目要求计算下列分段函数f(x)的值: 输入格式: 输入在一行中给出实数x。 输出格式: 在一行中按“f(x) = result”的格式输出,其中x与result都保留一位小数。 输入样例1: 输出样例1: 4.为了提倡居民节约用电,某省电力公司执行“阶梯电价”,安装一户一表的居民用户电价分为两个“阶梯”:月用电量50千瓦时(含50千瓦时)以内的,电价为0.53元/千瓦
北京工业大学c语言练习7-结构
练习7 结构 学号姓名 一、阅读程序 #include
平均分;然后输出平均分最高的学生的姓名及数学、英语成绩。 #include
哈工大C语言程序设计习题ex6
习题6 6.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 编程打印如下形式地杨辉三角形. 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1 6.8 编程将下列矩阵中地元素向右移动一列,最右一列移至第一列. 1 4 6 8 10 12 6.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 =∑=n k 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 地尾部.
大学C语言考试题库(答案)
================================================== 题号:1482 执行以下程序段后,输出结果和a的值是()。 int a=10; printf("%d",a++); A、11 和 10 B、11 和 11 C、10 和 11 D、10 和 10 答案: C 题号:2100 已知字符'A'的ASCⅡ代码值是65,字符变量c1的值是'A',c2的值是'D'.执行语句printf("%d,%d",c1,c2-2);后,输出结果是 A、65,66 B、A,B C、65,68 D、A,68 答案: A 题号:5055 相同结构体类型的变量之间,可以()。 A、比较大小 B、地址相同 C、赋值
答案: C 题号:3217 int a[10];合法的数组元素的最小下标值为()。 A、1 B、0 C、10 D、9 答案: B 题号:45 能正确表示逻辑关系:" a≥10或a≤0 "的C语言表达式是 A、a>=0 | a<=10 B、a>=10 or a<=0 C、a>=10 && a<=0 D、a>=10 || a<=0 答案: D 题号:157 main() {int x=1,a=0,b=0; switch (x) { case 0: b++; case 1: a++;
case 2: a++;b++;} printf("a=%d,b=%d",a,b); }该程序的输出结果是( ) A、2,2 B、2,1 C、1,1 D、1,0 答案: B 题号:4784 设变量a是整型,f是实型,i是双精度型,则表达式10+'a'+i*f值的 数据类型为()。 A、不确定 B、double C、int D、float 答案: B 题号:1647 以下程序中,while循环的循环次数是______ main() { int i=0; while(i<10) { if(i<1) continue;
北工大 c语言题库
求1 + 1/2! +....+ 1/n! #include "stdio.h" int main( ) { int ri,repeat; int i,n; double s; double fact(int n); scanf("%d",&repeat); for(ri=1;ri<=repeat;ri++){ scanf("%d",&n); s=0; for(i=1;i<=n;i++) s=s+1/fact(i); printf("%0.4f\n",s); } return 0; } double fact(int n) { int i; double result; result=1; for(i=1;i<=n;i++) result=result*i; return result; } 统计一个整数中数字的个数 #include "stdio.h" int main( ) { int ri,repeat; int count; long in; int countdigit(long number, int digit); scanf("%d",&repeat); #include "stdio.h" int main( ) { int ri,repeat; int i,n,j; float s,t; scanf("%d",&repeat); for(ri=1;ri<=repeat;ri++){ scanf("%d",&n); s=0; for(i=1;i<=n;i++){ t=1; for(j=1;j<=i;j++) t=t*j; s=s+1.0/t; } printf("%0.4f\n",s); } }
C语言全部考试系统题库含答案
目录
第一章 C语言基础知识 (C语言概述、算法、数据类型运算符表达式、位运算) 一、判断题(正确的填A,错误的填B) R1.在C语言中,逗号运算符的优先级最低。(A) 2.在C语言可执行程序的开始执行点是程序中第一个函数。(B) 3.“5ch”是合法的变量名。(B) 4.C语言程序书写格式自由,一行内可以写几个语句,一个语句可以分写在多行上。(A) 5.当输入数据时,必须指明变量的地址,如scanf("%f",&f) (A) N6.表达式i++与++i在任何场合功能完全相同。(B) 7.在赋值表达式中,赋值号左边的变量和右边的表达式之值的数据类型可以不相同。(A) R8.C语言程序中,语句以逗号结尾。( B ) 9.在 C 程序中,APH 和aph 代表不同的变量。( A ) 10. a-=7等价于a=a-7。( A ) N11. printf函数中用到格式符%5s ,其中数字5表示输出的字符串占用5列。如果字符串长度大于5,则输出按原字符长从左向右全部输出。(A ) 12.如果x>y为真或ay)&&(a大学MOOC哈工大C语言程序设计精髓第六周编程题答案
大学M O O C哈工大C语言程序设计精髓第六周 编程题答案 Document serial number【UU89WT-UU98YT-UU8CB-UUUT-UUT108】
下面代码的功能是将百分制成绩转换为5分制成绩,具体功能是:如果用户输入的是非法字符或者不在合理区间内的数据(例如输入的是a,或者102,或-45等),则程序输出?Input error!,并允许用户重新输入,直到输入合法数据为止,并将其转换为5分制输出。目前程序存在错误,请将其修改正确。并按照下面给出的运行示例检查程序。 #include<> #include <> 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) {
大学C语言考试题库(含答案)
单项选择 ================================================== 题号:1482 执行以下程序段后,输出结果和a的值是()。 int a=10; printf("%d",a++); A、11 和 10 B、11 和 11 C、10 和 11 D、10 和 10 答案: C 题号:2100 已知字符'A'的ASCⅡ代码值是65,字符变量c1的值是'A',c2的值是'D'.执行语句printf("%d,%d",c1,c2-2);后,输出结果是 A、65,66 B、A,B C、65,68 D、A,68 答案: A 题号:5055 相同结构体类型的变量之间,可以()。 A、比较大小 B、地址相同 C、赋值 D、相加 答案: C 题号:3217 int a[10];合法的数组元素的最小下标值为()。 A、1 B、0 C、10 D、9 答案: B 题号:45 能正确表示逻辑关系:" a≥10或a≤0 "的C语言表达式是 A、a>=0 | a<=10 B、a>=10 or a<=0 C、a>=10 && a<=0
D、a>=10 || a<=0 答案: D 题号:157 main() {int x=1,a=0,b=0; switch (x) { case 0: b++; case 1: a++; case 2: a++;b++;} printf("a=%d,b=%d",a,b); }该程序的输出结果是( ) A、2,2 B、2,1 C、1,1 D、1,0 答案: B 题号:4784 设变量a是整型,f是实型,i是双精度型,则表达式10+'a'+i*f值的 数据类型为()。 A、不确定 B、double C、int D、float 答案: B 题号:1647 以下程序中,while循环的循环次数是______ main() { int i=0; while(i<10) { if(i<1) continue; if(i==5) break; i++; } } A、死循环,不能确定次数 B、6
北京理工大学网络教室C语言编程题库及答案绝对
1.Hello world. 输入:无 输出:Hello world. 程序: #include<> int main() { printf("Hello world.\n"); return 0; } 2.Welcome to Beijing. 程序: #include <> int main() { printf("Welcome\n"); printf("to\n"); printf("Beijing.\n"); return 0; } 3. 求A+B 输入:整数1 整数2 输出:整数1+整数2=和 程序: #include<> int main() { int a,b; scanf("%d",&a); scanf("%d",&b); printf("%d+%d=%d\n",a,b,a+b); return 0; } 4. 求 x 的 3次方 输入:一个整数。 输出:该整数的 3 次方值。 程序: #include<> int main() { int x; scanf("%d",&x); printf("%d\n",x*x*x); return 0;
} 5. 学习打印你的第一个图形 编写一个小程序,要求输出的是 4 行由*号组成的等腰三角形。 程序: #include<> int main() { printf(" *\n"); printf(" ***\n"); printf(" *****\n"); printf("*******\n"); return 0; } 6. 一年级的算术题 输入:接受两个整数,每个整数之间使用空格分隔。例如输入格式为:123 444 输出:分别输出按照整型数据进行 +、-、*、/、* 之后的运行结果。 程序: #include<> int main() { int a,b; scanf("%d %d",&a,&b); 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=%d\n",a,b,a/b); printf("%d%%%d=%d\n",a,b,a%b); return 0; } 7. 求两个变量的最小值 输入:两个整型数 输出:两个整型值中的最小值 程序: #include<> int main() { int a,b; scanf("%d%d",&a,&b); printf("min=%d\n",a 哈工大二〇一五年春季学期 C 语言与数据结构 试 题 题号 一 二 三 四 五 六 七 八 九 十 十一 十二 总分 分数 学号 姓名 一、填空题。(每题2分,共14分) 1.列举出三种逻辑运算符_____、_____、_____。 2.多分支选择语句中switch 后面括号的表达式的值的类型应为___________。 3.以有符号的十进制整数形式输入变量a ,则该语句为______________________。 4.初始化二维数组 int a[2][3]; 则*a 表示____________________。 5.for(i=1,sum=0;i<100;i++) sum=sum+i;该语句运行结束后,sum 的值为_____。 6.C 语言规定标识符的第一个字符必须为_________或_________。 7.定义结构体变量如下:struct stu student1,*p ;则引用结构体成员num 的方法多种,请写出任意两种_______________________________ ____________________________________________________________________。 二、画出三种基本结构的流程图 (6分) 三、在二维数组中,若某一位置上的元素在该行中最小,而在该列中最大,则该元素即为该二维数组的鞍点。要求输入一个二维数组,当鞍点存在时,把鞍点找出来并输出。(10分) 四、有一个函数: 5(0)21(08)4(8)x x y x x x x ? =-≤?+≥? 写C 语言程序,输入整数x 的值,输出y 相应的值(8分) 1.输出Fibonacci 序列 1.1.题目要求 输入2 个正整数m和n(1<=m,n<=10000),输出m 和n之间所有的Fibonacci数。Fibonacci 序列(第1项起):1 1 2 3 5 8 13 21 ...... 要求定义并调用函数fib(n),它的功能是返回第n项Fibonacci数。例如,fib(7)的返回值是13。 输出语句:printf("%ld ", f); 1.2.测试结果(输入结束回车符用<回车>表示) (1)输入:1 10<回车> (m=1, n=10) 输出: 1 1 2 3 5 8 (1到10之间的Fibonacci数) (2)输入:20 100<回车>(m=20, n=100) 输出:21 34 55 89 (20到100之间的Fibonacci数) (3)输入:1000 6000<回车>(m=1000, n=6000) 输出:1597 2584 4181 (1000到6000之间的Fibonacci数) 2.输出m 到n之间的所有完数 2.1.题目要求:求完数 输入2 个正整数m和n(1<=m,n<=1000),输出m 到n之间的所有完数(完数就是因子和与它本身相等的数)。 要求定义并调用函数factorsum(number),它的功能是返回number的因子和。例如,factorsum (12)的返回值是16(1+2+3+4+6)。 输出语句:printf("%d ", i); 2.2.测试结果(输入结束回车符用<回车>表示) (1)输入:20 500<回车> 输出:28 496 (2)输入:1 100<回车> 输出:1 6 28 3.求各位数字的立方和等于它本身的数 3.1.题目要求 输入2 个正整数m和n(1<=m,n<=1000),输出m 到n之间的所有满足各位数字的立方和等于它本身的数。 要求定义并调用函数is(number)判断number的各位数字之立方和是否等于它本身。 输出语句:printf("%d ", i); 3.2.测试结果(输入结束回车符用<回车>表示,括号内是说明) (1)输入:100 400<回车> (说明:即m=100, n=400) 6.1 下面代码的功能是将百分制成绩转换为5分制成绩,具体功能是:如果用户输入的是非法字符或者不在合理区间内的数据(例如输入的是a,或者102,或-45等),则程序输出 Input error!,并允许用户重新输入,直到输入合法数据为止,并将其转换为5分制输出。目前程序存在错误,请将其修改正确。并按照下面给出的运行示例检查程序。 #include 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的值由键盘输入。例如,当n=4,a=2,表示计算2+22+222+2222的值。 #include哈工大C语言2015年试卷
北京工业大学c语言练习3-函数1
中国大学MOOC 哈工大 C语言程序设计精髓第六周编程题答案