您的位置:首页 > 娱乐 > 八卦 > 天元建设集团有限公司新中大_企业网站的设计与实现毕业论文_中国第一营销网_百度推广关键词查询

天元建设集团有限公司新中大_企业网站的设计与实现毕业论文_中国第一营销网_百度推广关键词查询

2024/12/24 3:38:46 来源:https://blog.csdn.net/Are_pro_bald/article/details/144559595  浏览:    关键词:天元建设集团有限公司新中大_企业网站的设计与实现毕业论文_中国第一营销网_百度推广关键词查询
天元建设集团有限公司新中大_企业网站的设计与实现毕业论文_中国第一营销网_百度推广关键词查询

1. 键盘录入一组数列,利用冒泡排序将数据由大到小排序

#include <stdio.h>
#include <string.h>
#define A_NUM 10int t1 = 0;
int t2 = 0;/**
*键盘录入一组数列,利用冒泡排序将数据由大到小排序
*/
//使用常规冒泡完成
void t_1_1()
{int i,n;printf("请输入数列的大小:\n");scanf("%d",&n);int arr[n];printf("请输入该数列:\n");for(i = 0; i < n; i++){scanf("%d",&arr[i]);}for(i = 0; i < n - 1; i++){for(int j = 0; j < n - i - 1; j++){if(arr[j] < arr[j+1] ){int temp = arr[j];arr[j] = arr[j+1];arr[j+1] = temp;}t1++;}}for(i = 0; i < n; i++){printf("%-4d",arr[i]);}printf("\n%d\n",t1);
}//使用鸡尾酒排序法完成
void t_1_2()
{int i,n;printf("请输入数列的大小:\n");scanf("%d",&n);int arr[n];int start = 0;int end = n - 1;int is_flag = 1;for(i = 0; i < n; i++){scanf("%d",&arr[i]);}while(is_flag){is_flag = 0;for(i = start; i < end; i++){if(arr[i] < arr[i+1]){int temp = arr[i];arr[i] = arr[i+1];arr[i+1] = temp;is_flag = 1;}t2++;}end--;if(!is_flag)break;for(i = end; i > start; i--){if(arr[i] > arr[i-1]){int temp = arr[i];arr[i] = arr[i-1];arr[i-1] = temp;is_flag = 1;}t2++;}start++;}for(i = 0; i < n; i++){printf("%-4d",arr[i]);}printf("\n%d\n",t2);
}

2.输入年、月、日,计算该天是本年的第几天

/**
*输入年、月、日,计算该天是本年的第几天
*/
void t_2()
{int num_y,num_m,num_d;printf("输入年数-月数-天:\n");scanf("%d-%d-%d",&num_y,&num_m,&num_d);int m[] = {31,28,31,30,31,30,31,31,30,31,30,31};int len = sizeof(m)/sizeof(m[0]);if((num_y % 400 == 0) || (num_y % 100 != 0 && num_y % 4 == 0))m[1]++;int sum = num_d;for(int i = 0; i < num_m - 1; i++){sum += m[i];}printf("%d年已经过%d天\n",num_y,sum);
}

3.键盘录入一组数列,求最大值、最小值、均值

/**
*键盘录入一组数列,求最大值、最小值、均值
*/
void t_3()
{int arr[A_NUM];int len = sizeof(arr)/sizeof(arr[0]);for(int i = 0; i < len; i++){scanf("%d",&arr[i]);}int max = arr[0];int min = arr[0];int sum = 0;for(int i = 1; i < len; i++){sum += arr[i];if(arr[i] > max)max = arr[i];if(arr[i] < min)min = arr[i];}printf("十个数的最大值是%d,最小值是%d,平均值是%.1lf\n",max,min,(double)sum/10);
}

4.从键盘录入一组数据,判断是否是回文,如12321,abba

/**
*从键盘录入一组数据,判断是否是回文,如12321,abba
*/
void t_4()
{int n;printf("输入数据的位数:\n");scanf("%d",&n);int arr[n];int is_flag = 1;for(int i = 0; i < n; i++){scanf("%1d",&arr[i]);}for(int i = 0; i < n/2; i++){if(arr[i] != arr[n-i-1])is_flag = 0;}if(is_flag)printf("是回文数据!\n");else printf("不是回文数据!\n");
}

5.用数组存储10个整型数,通过键盘输入一个数,找出该数在数组中的下标值

/**
*用数组存储10个整型数,通过键盘输入一个数,找出该数在数组中的下标值
*/void t_5()
{int arr[10];for(int i = 0; i < 10; i++){scanf("%d",&arr[i]);}int n;printf("输入需要查找的数:\n");scanf("%d",&n);int is_flag = 1;int i;for(i = 0; i < 10; i++){if(arr[i] == n)break;if(i == 10 - 1)is_flag = 0;}if(is_flag)printf("下标值为%d!\n",i);else printf("数组中没有这个数\n");
}

6.通过键盘输入10个学员成绩,输出不及格学员的成绩和下标;最高分,最低分的下标;总成绩与平均成绩!

/**
*通过键盘输入10个学员成绩
*输出不及格学员的成绩和下标;最高分,最低分的下标;总成绩与平均成绩!
*/void t_6()
{int st[10];int i;int len = sizeof(st) / sizeof(st[0]);printf("输入十个学员的成绩:\n");for(i = 0; i < 10; i++){scanf("%d",&st[i]);}int max = st[0],min = st[0];int sum = 0;int no_max,no_min;for(i = 0; i < 10; i++){if(st[i] < 60)printf("%d号学生的成绩不及格,为%d\n",i+1,st[i]);if(st[i] > max){max = st[i];no_max = i;}if(st[i] < min){min = st[i];no_min = i;}sum += st[i];}printf("最高分是第%d个同学,考了%d分\n",no_max+1,max);printf("最低分是第%d个同学,考了%d分\n",no_min+1,min);printf("总成绩为%d,平均成绩为%.1lf\n",sum,(double)sum / len);}

7.一个二维数组赋初值,用户输入一个数,在该二维数组中查找,找到返回行列位置,没找到提示

/**
*一个二维数组赋初值,用户输入一个数,在该二维数组中查找,找到返回行列位置,没找到提示
*/
void t_7()
{int arr[3][3] = {11,12,13,21,22,23,31,32,33};int n;printf("输入要查找的数:\n");scanf("%d",&n);int i,j;int is_flag = 0;for(i = 0; i < sizeof(arr) / sizeof(arr[0]);i++){for( j = 0; j < sizeof(arr[0]) / sizeof(arr[0][0]);j++){if(n == arr[i][j]){is_flag = 1;break;}}if(is_flag)break;}if(is_flag)printf("在第%d行第%d列!\n",i+1,j+1);else printf("没这个数!\n");
}

8.二维整型数组,求所有元素的平均值,求每行最大值,求每列最小值

/**
*二维整型数组,求所有元素的平均值,求每行最大值,求每列最小值
*/
void t_8()
{int arr[3][3] = {19,35,21,38,15,25,24,17,33};int i,j;int sum = 0;int max;int row = sizeof(arr) / sizeof(arr[0]);int col = sizeof(arr[0]) / sizeof(arr[0][0]);int min[col];printf("设有二维数组如下:\n");for(i = 0; i < row; i++){for(j = 0; j < col; j++){printf("%-4d",arr[i][j]);}printf("\n");}for(i = 0; i < row; i++){max = arr[i][0]; for(j = 0; j < col; j++){sum += arr[i][j];if(arr[i][j] > max)max = arr[i][j];if(i == 0)min[j] = arr[i][j];else if(i > 0){if(min[j] > arr[i][j])min[j] = arr[i][j];}}printf("第%d行最大值为%d\n",i+1,max);}for(i = 0; i < col; i++){printf("第%d列的最小值为%d\n",i+1,min[i]);}printf("所有元素的平均值为:%.1f\n",(float)sum/(i*j));
}

9.在行列相等数组计算主对角线元素的和

/**
*在行列相等数组计算主对角线元素的和
*/
void t_9()
{int n;printf("输入数组行列的值(行列相等):\n");scanf("%d",&n);int a[n][n];int sum = 0;for(int i = 0; i < n; i++){for(int j = 0; j < n; j++){scanf("%d",&a[i][j]);}}for(int i = 0; i < n ; i++){for(int j = 0; j < n; j++){if(i == j)sum += a[i][j];}}printf("对角线的和为%d\n",sum);}

10.计算矩阵下三角元素的和

/**
*计算矩阵下三角元素的和
*/
void t_10()
{int n;printf("输入数组行列的值(行列相等):\n");scanf("%d",&n);int a[n][n];int sum = 0;for(int i = 0; i < n; i++){for(int j = 0; j < n; j++){scanf("%d",&a[i][j]);}}for(int i = 0; i < n; i++){for(int j = 0; j < n; j++){if(j <= i)sum += a[i][j];}}printf("矩阵下三角元素的和是%d\n",sum);
}

11.电影院某一排某一列放置礼品,放置位置规定为“行和列的平方和为512”,电影院有20排,每排25座!找出礼品所在位置!

/**
*电影院某一排某一列放置礼品,放置位置规定为“行和列的平方和为512”,电影院有20排,每排25座!
*找出礼品所在位置!
*/
void t_11()
{int i,j;int arr[20][25];for(i = 0; i < 20; i++){for(j = 0; j < 25; j++){int temp = (i+1)*(i+1) + (j+1)*(j+1);if(temp == 512)printf("礼包在第%d排,第%d列!\n",i+1,j+1);}}
}

12.编写一个程序,读取用户输入的字符串,并将其反转输出

/**
*编写一个程序,读取用户输入的字符串,并将其反转输出
*/
void t_12()
{char str[30];fgets(str,30,stdin);char str_turn[30];int len = strlen(str);int i;len--; //去掉'\0'for(i = 0; i < len; i++){if(str[len - i - 1] == '\n')continue;str_turn[i] = str[len - i - 1];}printf("%s\n",str_turn);
}

13.编写一个程序,判断用户输入字符串是否为回文

/**
*编写一个程序,判断用户输入字符串是否为回文
*/
void t_13()
{char arr[30];fgets(arr,30,stdin);int len = strlen(arr);//fgets会将\n也算进去,所以末尾为\n时要移除if(arr[len - 1] == '\n'){arr[len - 1] = '\0';len--;}int is_flag = 1;for(int i = 0; i < len/2; i++){if(arr[i] != arr[len-i-1])is_flag = 0;}if(is_flag)printf("是回文数据!\n");else printf("不是回文数据!\n");
}

14.求一个矩阵的鞍点(行最大的同时列也最大)

/**
*求一个矩阵的鞍点(行最大的同时列也最大)
*/
void t_14()
{int arr[4][5] = {99,35,46,13,89,13,34,56,86,12,56,25,34,27,3,48,67,53,19,24};int i,j;int sum = 0;int max_row;         //存放每行最大值int row = sizeof(arr) / sizeof(arr[0]);int col = sizeof(arr[0]) / sizeof(arr[0][0]);int max_col[col];    //存放每列最大值int max_row_i[row];  //存放每行最大数的列int max_col_j[col];  //存放每列最大数的行printf("设有二维数组如下:\n");for(i = 0; i < row; i++){for(j = 0; j < col; j++){printf("%-4d",arr[i][j]);}printf("\n");}for(i = 0; i < row; i++){max_row = arr[i][0]; for(j = 0; j < col; j++){if(arr[i][j] > max_row){max_row = arr[i][j];max_row_i[i] = j;}if(i == 0){max_col[j] = arr[i][j];max_col_j[j] = i;}else if(i > 0){if(max_col[j] < arr[i][j]){max_col[j] = arr[i][j];max_col_j[j] = i;}}}}for(i = 0; i < row; i++){for(j = 0; j < col; j++){if(j == max_row_i[i] && i == max_col_j[j])printf("%d是一个鞍点!\n",arr[i][j]);}}
}

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com