课后习题
Begin to change
咸鱼也是会翻身的!
展开
-
写一个判断素数的函数,在主函数输入一个整数,输出是否是素数的消息。
题目描述写一个判断素数的函数,在主函数输入一个整数,输出是否是素数的消息。输入一个数输出如果是素数输出prime 如果不是输出not prime样例输入97样例输出prime#includeint prime(int a){int i,n;for(i=2; i{原创 2018-01-31 13:01:32 · 4414 阅读 · 0 评论 -
三角形面积=SQRT(S*(S-a)*(S-b)*(S-c)) 其中S=(a+b+c)/2,a、b、c为三角形的三边。 定义两个带参的宏,一个用来求area, 另一个宏用来求S。 写程序,在程序中用带
题目描述三角形面积=SQRT(S*(S-a)*(S-b)*(S-c)) 其中S=(a+b+c)/2,a、b、c为三角形的三边。 定义两个带参的宏,一个用来求area, 另一个宏用来求S。 写程序,在程序中用带实参的宏名来求面积area。输入a b c三角形的三条边,可以是小数。输出三角形面积,保留3位小数样例输入3 4 5原创 2018-02-06 13:41:36 · 7108 阅读 · 0 评论 -
输出菱形
#include<stdio.h> int main() { int i,j,k; for(i=1;i<=4;i++) //先打印上边的四行 { for(j=1;j<=4-i;j++) //控制要打印的空格数量 printf(" "); for(k=1;k<=2*i-1;k++) //控制要打印的星号数 printf("*"); printf("\...原创 2018-02-22 14:27:09 · 201 阅读 · 0 评论 -
求最大值及其下标
#include<stdio.h>#define N 3int main(){ int i,a[N],max,x=0,n; scanf("%d",&n); for(i=0;i<N;i++) { scanf("%d",&a[i]); }max=a[0]; for(i=0;i<N;i++) { if(a[i]>max) { max=a[i]; ...原创 2018-03-15 20:51:51 · 1140 阅读 · 0 评论 -
将数组中的数逆序存放
#include<stdio.h>int main(){ int n,a[10],i; scanf("%d",&n); for(i=0;i<n;i++) { scanf("%d",&a[i]); } for(i=n-1;i>=0;i--) { printf("%d ",a[i]); } return 0;}原创 2018-03-15 20:56:19 · 4099 阅读 · 0 评论 -
选择法排序
#include<stdio.h>int main(){ int n,a[10],i,j,t; scanf("%d",&n); for(i=0;i<n;i++) { scanf("%d",&a[i]); } for(i=0;i<n-1;i++) { for(j=0;j<n-1-i;j++) { if(a[i]>a[i+1]) {...原创 2018-03-15 21:01:48 · 322 阅读 · 0 评论 -
输出数组元素
#include<stdio.h>int main(){ int n,i,a[20],b[20],j; scanf("%d",&n); for(i=0;i<n;i++) { scanf("%d",&a[i]); } for(i=0;i<n;i++) { b[i]=a[i+1]-a[i]; } for(i=0;i<n-1;i++) { if(i%3...原创 2018-03-15 21:02:50 · 4757 阅读 · 0 评论 -
数字加密
#include<stdio.h>#include<math.h>int main(){ int a[10],i,n,b[10],t,s=0; scanf("%d",&n); for(i=0;i<4;i++) { a[i]=n%10; n/=10; } for(i=0;i<4;i++) { b[i]=(a[i]+9)%10; } for(i=0;i...原创 2018-03-15 21:03:26 · 353 阅读 · 0 评论 -
交换最小值与最大值
#include<stdio.h>int main(){ int n,a[10],i,min,max,min_i,max_j=0,t,j; scanf("%d",&n); for(i=0;i<n;i++) { scanf("%d",&a[i]); } min=a[0];max=a[0]; for(i=0;i<n;i++) { if(min>a[i]...原创 2018-03-15 21:04:05 · 12226 阅读 · 0 评论 -
求整数序列中出现次数最多的数
#include<stdio.h>int main(){ int i,a[10],n,b[10],j,max,max_i,c[10]={0}; scanf("%d",&n); for(i=0;i<n;i++) { scanf("%d",&a[i]); } for(i=0;i<n;i++) { b[i]=1; for(j=i+1;j<n;j++) ...原创 2018-03-15 21:05:14 · 2776 阅读 · 0 评论 -
组个最小数
#include<stdio.h>#include<math.h>int main(){ int a[20],i,t,s,j; for(i=0;i<8;i++) { scanf("%d",&a[i]); } for(i=0;i<7;i++) { for(j=0;j<7-i;j++) { if(a[i]>a[i+1]) { ...原创 2018-03-15 21:05:47 · 260 阅读 · 0 评论 -
找出不是两个数组共有的元素
#include <stdio.h>int main(){int a[20],b[20],c[100],m,n,i,j,e,h,k;k=0;scanf("%d",&m);for(i=0;i<m;i++)scanf("%d",&a[i]);scanf("%d",&n);for(j=0;j<n;j++)scanf("%d",&am原创 2018-03-11 22:08:46 · 2727 阅读 · 0 评论 -
找鞍点
#include<stdio.h>int main(){ int a[10][10],i,j,k,n,max,max_i,max_j,t=1,m,o,max1; scanf("%d",&n); for(i=0;i<n;i++) { for(j=0;j<n;j++) { scanf("%d",&a[i][j]); } } for(i=0;i<n...原创 2018-03-29 22:46:53 · 480 阅读 · 0 评论 -
二维数组的应用
一个班上有80个学生,有10门科目,输出每一名学生的成绩和平均分,并且按照从小到大排列;#include<stdio.h>#define N 80#define C 10int main(){ int a[100][100],i,j,n,max,s,t,k; for(i=0;i<N;i++) { s=0; for(j=0;j<C;j++) { scanf("%d...原创 2018-03-21 13:46:32 · 763 阅读 · 0 评论 -
动态分配方式计算学生成绩
#include<stdio.h>#include<stdlib.h>int main(){ int *p,i,n; double sum=0,min,max,average; scanf("%d",&n); //if((p=(int*) malloc(n*sizeof(int)))==NULL) //exit(1); if((p=(int*)ma...原创 2018-05-14 11:38:38 · 1739 阅读 · 0 评论 -
宏定义运用
题目描述输入两个整数,求他们相除的余数。用带参的宏来实现,编程序。输入a b两个数输出a/b的余数样例输入3 2样例输出1#include#define x(a,b) a%bint main(){int m,n,t;scanf("%d%d",&m,&n);if(m原创 2018-02-06 13:28:55 · 200 阅读 · 0 评论 -
宏定义
题目描述定义一个带参的宏,使两个参数的值互换,并写出程序,输入两个数作为使用宏时的实参。输出已交换后的两个值。输入两个数,空格隔开输出交换后的两个数,空格隔开样例输入1 2样例输出2 1#include#define Y(a,b) t=a;a=b;b=t;//两数交换位置int main()原创 2018-02-06 13:20:57 · 2179 阅读 · 0 评论 -
写一个函数,使给定的一个二维数组(3×3)转置,即行列互换。
题目描述写一个函数,使给定的一个二维数组(3×3)转置,即行列互换。输入一个3x3的矩阵输出无样例输入1 2 34 5 67 8 9样例输出1 4 7 2 5 8 3 6 9 #includevoid change(int a[3][3]){int i, j,原创 2018-01-31 13:56:44 · 39258 阅读 · 6 评论 -
数组的运用
有一个小组5个人,每个学生有五门成绩,要求输出平均成绩最高的学生的成绩以及该学生的序号.#includeint main(){float a[5][6]={{78,82,93,74,65},{91,82,72,76,67},{100,90,85,72,98,},{67,89,90,65,78},{77,88,99,45,89}};//把平均成绩也定义进去了;float ma原创 2018-02-04 13:38:54 · 255 阅读 · 0 评论 -
给年份year,定义一个宏,以判别该年份是否闰年。提示:宏名可以定义为LEAP_YEAR,形参为y,既定义宏的形式为 #define LEAP_YEAR(y) (读者设计的字符串)
题目描述给年份year,定义一个宏,以判别该年份是否闰年。提示:宏名可以定义为LEAP_YEAR,形参为y,既定义宏的形式为 #define LEAP_YEAR(y) (读者设计的字符串)输入一个年份输出根据是否闰年输出,是输出"L",否输出"N"样例输入2000样例输出L#include<stdio.h>#define LEAP_YEAR(y) ((y%4==0&&...原创 2018-02-09 12:12:54 · 2592 阅读 · 0 评论 -
请设计输出实数的格式,包括:⑴一行输出一个实数;⑵一行内输出两个实数;⑶一行内输出三个实数。实数用"6.2f"格式输出。
题目描述请设计输出实数的格式,包括:⑴一行输出一个实数;⑵一行内输出两个实数;⑶一行内输出三个实数。实数用"6.2f"格式输出。输入一个实数,float范围输出输出3行,第一行打印一遍输入的数,第二行打印两遍,第三行打印三遍。 第二行和第三行,用空格分隔同一行的数字。 实数用"6.2f"格式输出。样例输入0.618样例输出 0.62 0.62 0.62 0.62 0.62 0...原创 2018-02-09 12:24:14 · 2946 阅读 · 0 评论 -
写一函数,使输入的一个字符串按反序存放,在主函数中输入输出反序后的字符串。
题目描述写一函数,使输入的一个字符串按反序存放,在主函数中输入输出反序后的字符串。输入一行字符输出逆序后的字符串样例输入123456abcdef 样例输出fedcba654321#include#include//使用字符串函数时头文件 int str(char a[20],char b[原创 2018-02-05 12:28:09 · 32381 阅读 · 2 评论 -
写一函数,将两个字符串连接
写一函数,将两个字符串连接输入两行字符串输出链接后的字符串样例输入123abc样例输出123abc#include#includeint str(char a[30],char b[10])//定义两个数组; 字符串1必须足够大,以便容纳连接后的新字符串; { strcat(a原创 2018-02-05 12:41:02 · 42480 阅读 · 14 评论 -
写一函数,将一个字符串中的元音字母复制到另一个字符串,然后输出
题目描述写一函数,将一个字符串中的元音字母复制到另一个字符串,然后输出。输入一行字符串输出顺序输出其中的元音字母(aeiuo)样例输入abcde样例输出ae#include#includevoid str(char a[100],char b[100]){ int i=0, j=0;原创 2018-02-05 13:10:32 · 30589 阅读 · 6 评论 -
写一函数,输入一个四位数字,要求输出这四个数字字符,但每两个数字间空格。如输入1990,应输出"1 9 9 0"。
题目描述写一函数,输入一个四位数字,要求输出这四个数字字符,但每两个数字间空格。如输入1990,应输出"1 9 9 0"。输入一个四位数输出增加空格输出样例输入1990样例输出1 9 9 0#include#includeint main(){ int i, l; char a[原创 2018-02-05 13:26:45 · 11661 阅读 · 2 评论 -
求一个3×3矩阵对角线元素之和。
题目描述求一个3×3矩阵对角线元素之和。输入矩阵输出主对角线 副对角线 元素和样例输入1 2 31 1 13 2 1样例输出3 7#includeint main(){int a[3][3];//定义个二维数组,先行后列; int i, j, v, s;for(i=0原创 2018-01-29 13:47:59 · 2849 阅读 · 0 评论 -
已有一个已排好的9个元素的数组,今输入一个数要求按原来排序的规律将它插入数组中。
题目描述已有一个已排好的9个元素的数组,今输入一个数要求按原来排序的规律将它插入数组中。输入第一行,原始数列。 第二行,需要插入的数字。输出排序后的数列样例输入1 7 8 17 23 24 59 62 10150样例输出178172324505962101#inc原创 2018-01-29 13:59:54 · 6530 阅读 · 0 评论 -
分别用函数和带参的宏,从三个数中找出最大的数。
题目描述分别用函数和带参的宏,从三个数中找出最大的数。输入3个实数输出最大的数,输出两遍,先用函数,再用宏。 保留3位小数。样例输入1 2 3样例输出3.0003.000#include<stdio.h>#define max0(x,y) x>y?x:y;double max(double a, double b, double c){ double d, e; d=(a&g...原创 2018-02-09 15:58:45 · 624 阅读 · 0 评论 -
输入一行电报文字,将字母变成其下一字母(如’a’变成’b’……’z’变成’a’其它字符不变)
题目描述输入一行电报文字,将字母变成其下一字母(如’a’变成’b’……’z’变成’a’其它字符不变)。输入一行字符输出加密处理后的字符样例输入a b样例输出b c#include<stdio.h>#include<string.h>int main(){char a[100];int i,j;gets(a);j=strlen(a);for(i=0;i<...原创 2018-02-09 16:11:04 · 13557 阅读 · 5 评论 -
编写一函数,由实参传来一个字符串,统计此字符串中字母、数字、空格和其它字符的个数,在主函数中输入字符串以及输出上述结果。 只要结果,别输出什么提示信息。
题目描述编写一函数,由实参传来一个字符串,统计此字符串中字母、数字、空格和其它字符的个数,在主函数中输入字符串以及输出上述结果。 只要结果,别输出什么提示信息。输入一行字符串输出统计数据,4个数字,空格分开。样例输入!@#$%^QWERT 1234567样例输出5 7 4 6 #include<stdio.h>#include<...原创 2018-02-05 15:15:00 · 11868 阅读 · 7 评论 -
写两个函数,分别求两个整数的最大公约数和最小公倍数,用主函数调用这两个函数,并输出结果两个整数由键盘输入。
题目描述写两个函数,分别求两个整数的最大公约数和最小公倍数,用主函数调用这两个函数,并输出结果两个整数由键盘输入。输入两个数输出最大公约数 最小公倍数样例输入6 15样例输出3 30方法一#includeint maxyue(int a,int b){ int c;转载 2018-01-30 12:58:13 · 38397 阅读 · 10 评论 -
使用函数的选择排序法排序
#include<stdio.h>int main(){ void sort(int a[],int n); int a[20],n,i; scanf("%d",&n); for(i=0;i<n;i++) { scanf("%d",&a[i]); } sort(a,n); for(i=0;i<n;i++) { printf("...原创 2018-05-14 11:44:41 · 9623 阅读 · 1 评论